一.centos7通过yum安装;
操作用户: root
编写/etc/yum.repo.d/mongodb.repo :
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
安装mongodb 6.0 :
yum makecache
yum install mongodb-org -y
创建mongodb相关目录[根据自己环境确定mongodb相关文件目录]:
mkidr -p /kingdee/mongodb/27017/{bin,data,logs}
修改mongodb配置文件,非认证模式 :
systemLog:
destination: file
logAppend: true #日志追加模式
path: /kingdee/mongodb/27017/logs/mongod.log #日志存放路径
storage:
dbPath: /kingdee/mongodb/27017/data #数据保存路径
journal:
enabled: true
processManagement:
fork: true # fork and run in background #后台启动
pidFilePath: /kingdee/mongodb/27017/mongod.pid #pid文件路径
timeZoneInfo: /usr/share/zoneinfo #时区设置
net:
port: 27017 #端口
bindIp: 0.0.0.0 #绑定IP地址
设置开机启动:
systemctl enable mongod #设置开机启动
systemc start mongod #启动服务
二.mongodb开启认证;
在第一步执行mongodb启动后,应用mongosh连接数据库
mongosh --port 27017 --host 0.0.0.0 admin
db.createUser({user:"mongodbuser",pwd:"mongodbpass",roles:[{role:"root",db:"admin"}]})
查看用户是否创建完成
db.getUsers()
配置文件中开启auth认证:
systemLog:
destination: file
logAppend: true #日志追加模式
path: /kingdee/mongodb/27017/logs/mongod.log #日志存放路径
storage:
dbPath: /kingdee/mongodb/27017/data #数据保存路径
journal:
enabled: true
processManagement:
fork: true # fork and run in background #后台启动
pidFilePath: /kingdee/mongodb/27017/mongod.pid #pid文件路径
timeZoneInfo: /usr/share/zoneinfo #时区设置
net:
port: 27017 #端口
bindIp: 0.0.0.0 #绑定IP地址
###添加auth认证####
security:
authorization: enabled #是否开启认证
重启mongodb:
systemctl restart mongod
连接测试:
mongosh --port 27017 --host 0.0.0.0 admin
admin>show dbs
MongoServerError: command createUser requires authentication #未登录提示需要登录
admin>db.auth("mongodbuser","mongodbpass")
admin>show dbs