CentOS7 安装 MongoDB 4.4+ (安装、配置、服务&自启动)
一、下载
1、官方下载地址:https://www.mongodb.com/try#community
2、选择社区版(免费版) --> 4.4 中最新版 --> CentOS7(本人是CentOS 7.9)--> tgz 包 --> 下载。
二、安装
1、解压到指定位置
# tar -zxvf mongodb-linux-x86_64-rhel70-4.4.19.tgz
# mv mongodb-linux-x86_64-rhel70-4.4.19 mongodb
2、创建对应目录级权限
# mkdir /usr/local/mongodb/data #数据目录
# mkdir /usr/local/mongodb/log #日志目录
# chmod 777 /usr/local/mongodb/data /usr/local/mongodb/log #设置可读写权限
三、配置
创建 mongodb 的配置文件:
在mongodb目录下新建配置文件mongodb.conf。(建议配置)
# vi /usr/local/mongodb/mongodb.conf
#配置文件中的目录和已创建的一一对应
# 数据库数据存放目录 dbpath=/usr/local/mongodb/data # 日志文件存放目录
logpath=/usr/local/mongodb/log/mongodb.log # 日志追加方式 logappend=true # 端口 port=27017 # 是否认证(首次创建超级管理员账户时,需要先设置为false。) auth=true # 以守护进程方式在后台运行 fork=true # 远程连接要指定ip,否则无法连接;0.0.0.0代表不限制ip访问 bind_ip=0.0.0.0
配置环境变量:
在/etc/profile 末尾添加以下内容并保存,最后使用 source /etc/profile命令重启系统配置。
export PATH=$PATH:/usr/local/mongodb/bin
四、服务&自启动
# vi /etc/init.d/mongodb
#注意前两行命令的目录需要根据实际情况对应。
#!/bin/bash
#chkconfig: 2345 81 96
#description: mongodb
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
添加自启动脚本执行权限
# chmod 775 /etc/init.d/mongodb
# chkconfig --add mongodb
# chkconfig mongodb on
启动MongoDB,
# service mongodb start
如下图所示,则说明启动成功:
浏览器访问:10.12.58.212:27017(根据实际IP调整),看到一下信息表示可以成功访问:
五、数据库账户
MongoDB安装好后第一次进入是不需要密码的,也没有任何用户,通过shell命令 可直接进入
MongoDB 没有无敌用户root,只有能管理用户的角色:userAdminAnyDatabase
1、进入命令行连接:
# mongo
关闭认证(auth=false)时,是这样的提示:
开启认证(auth=true)时,是这样的:
2、创建用户admin:
db.createUser({user:"admin",pwd:"123456",roles: [{role:"userAdminAnyDatabase", db:"admin"}]});
3、开始认证模式,重启MongoDB,使用超管admin进入:
4、建新的数据库和用户:
#鉴权
db.auth("admin","123456")
#创建新数据库 use iot_dev #建操作权限用户 db.createUser({user:"dev",pwd:"123456",roles: [{ "role": "readWrite", "db": "iot_dev" },{ "role": "userAdmin", "db": "iot_dev" }]});
使用新的数据库及账户进行链接使用:
以上工作全部完成!
注:文强哥出品,祝各位使用愉快!
追加内容:
修改用户密码: db.updateUser('admin', {pwd: '123456'}) 旧方法: db.changeUserPassword('admin','123') 已经无效,切记、