Centos7安装MongoDB

下载

官网:https://www.mongodb.com/
下载地址:https://www.mongodb.com/try/download/community

1. 安装

将资源上传至服务器 /root ,解压至 /usr/local 并重命名为 mongodb

# 解压 mongodb 至指定目录
tar -zxvf /root/mongodb-linux-x86_64-rhel70-4.4.1.tgz -C /usr/local/
# 重命名解压目录为 mongodb
mv /usr/local/mongodb-linux-x86_64-rhel70-4.4.1/ /usr/local/mongodb

创建用于存放数据和日志的文件夹,并修改其权限增加读写权限。

# 创建存放数据的目录
mkdir -p /home/mongodb/data/db
# 创建存放日志的目录
mkdir -p /home/mongodb/logs
# 创建日志记录文件
touch /home/mongodb/logs/mongodb.log

2. 环境变量

每次操作 MongoDB 都需要进入具体的目录才行,比如启动服务,客户端进行连接等,可不可以在任意目录都能进行操作。答案当然是可以的,只需要将 MongoDB 相关目录添加至系统环境变量即可。

修改/etc/profile 编辑系统环境变量文件,添加以下内容:

# 添加环境变量
export MONGODB_HOME=/usr/local/mongodb
export PATH=$PATH:$MONGODB_HOME/bin

source /etc/profile 重新加载系统环境变量

3. 启动

1)前台启动

MongoDB 的默认启动方式为前台启动。所谓的前台启动就是 MongoDB 启动进程后会占用当前的终端窗口。

前台启动

mongod --dbpath /usr/local/mongodb/data/db/ --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0

说明:

--dbpath :指定数据文件存放目录
--logpath :指定日志文件,注意是指定文件不是目录
--logappend :使用追加的方式记录日志
--port :指定端口,默认为 27017
--bind_ip :绑定服务 IP,若绑定 127.0.0.1,则只能本机访问,默认为本机地址

前台启动就是以守护进程的方式启动 MongoDB。命令中添加 --fork 即可

后台启动

mongod --dbpath /usr/local/mongodb/data/db/ --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork

配置文件启动

/home/mongodb目录下增加一个 mongodb.conf 配置文件

# 数据文件存放目录
dbpath = /home/mongodb/data/db
# 日志文件存放目录
logpath = /home/mongodb/logs/mongodb.log
# 以追加的方式记录日志
logappend = true
# 端口默认为 27017
port = 27017
# 对访问 IP 地址不做限制,默认为本机地址
bind_ip = 0.0.0.0
# 以守护进程的方式启用,即在后台运行
fork = true

启动

# 指定配置文件的方式启动服务
mongod -f /home/mongodb/mongodb.conf

4.关闭服务

使用 --shutdown 参数即可关闭。

 # 命令启动方式的关闭
mongod --dbpath /home/mongodb/data/db/ --logpath /home/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork --shutdown
# 配置文件启动方式的关闭
mongod -f /home/mongodb/mongodb.conf --shutdown

函数关闭

连接到 MongoDB 服务后,切换到 admin 数据库,并使用相关函数关闭服务。

mongo
# 切换 admin 数据库
use admin
# 执行以下函数(2选1)即可关闭服务
db.shutdownServer()
db.runCommand("shutdown")

5.客户端访问

可以通过 bin 目录中的 mongo 来访问 MongoDB 服务器。

  命令为:mongo --host 连接的主机地址(默认127.0.0.1) --port 端口(默认27017)

help  帮助命令。
db.version()  查看版本信息。
show dbs  查看所有数据库。

[root@localhost conf]# mongo --host 127.0.0.1 --port 27001
MongoDB shell version v3.4.24-4-g68fadc9173
connecting to: mongodb://127.0.0.1:27001/
MongoDB server version: 3.4.24-4-g68fadc9173
>
> use admin
switched to db admin
>
> show users;
2022-08-14T10:59:22.643+0800 E QUERY    [thread1] Error: not authorized on admin to execute command { usersInfo: 1.0 } :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.getUsers@src/mongo/shell/db.js:1539:1
shellHelper.show@src/mongo/shell/utils.js:797:9
shellHelper@src/mongo/shell/utils.js:704:15
@(shellhelp2):1:1
> exit
bye
[root@localhost conf]# mongo --host 127.0.0.1 --port 27001
MongoDB shell version v3.4.24-4-g68fadc9173
connecting to: mongodb://127.0.0.1:27001/
MongoDB server version: 3.4.24-4-g68fadc9173
> use admin
switched to db admin
> db.auth('admin','12#qweASD')
1
> show users
{
        "_id" : "admin.admin",
        "userId" : BinData(4,"Ty65J4J9TPy5ySYrUrxdyQ=="),
        "user" : "admin",
        "db" : "admin",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}
相关推荐
PcVue China2 小时前
PcVue + SQL Grid : 释放数据的无限潜力
大数据·服务器·数据库·sql·科技·安全·oracle
魔道不误砍柴功4 小时前
简单叙述 Spring Boot 启动过程
java·数据库·spring boot
锐策4 小时前
〔 MySQL 〕数据库基础
数据库·mysql
舞动CPU4 小时前
linux c/c++最高效的计时方法
linux·运维·服务器
远歌已逝5 小时前
管理Oracle实例(二)
数据库·oracle
日月星宿~5 小时前
【MySQL】summary
数据库·mysql
爱吃土豆的程序员5 小时前
在oracle官网下载资源显示400 Bad Request Request Header Or Cookie Too Large 解决办法
java·数据库·oracle·cookie
睿思达DBA_WGX5 小时前
Oracle 11g rac 集群节点的修复过程
数据库·oracle
尘浮生5 小时前
Java项目实战II基于微信小程序的移动学习平台的设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·学习·微信小程序·小程序
秦jh_6 小时前
【Linux】多线程(概念,控制)
linux·运维·前端