服务器版本:CentOS 7.6 64位
安装mongoDB社区版本
MongoDB社区版本和企业版本差异主要体现在安全认证、系统认证等方面,所以我们直接安装社区版。
首先创建mongoDB的镜像源
默认的镜像源是无法下载,不知道为什么
vi /etc/yum.repos.d/mongodb-org-4.4.repo
写入
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
使用yum下载
sudo yum install -y mongodb-org
开启mongoDB
sudo systemctl start mongod
验证是否成功开启
sudo systemctl status mongod
这样就是成功开启了
运行mongoDB
mongo
可以看到数据库的版本,这样就算成功启动了!
连接mongoDB
在进入mongo后,使用 show dbs可以看见当前的用户,注意如果你以前注册过用户,就不能直接使用show dbs。需要先切换到管理员状态并登录后才能使用,否则show dbs不返回任何信息。
我们需要创建一个使用账号密码远程访问的账户,这样才可以连接。
输入下面指令切换到管理员状态
use admin
然后创建用户名和密码
db.createUser({user:"adminUser", pwd:"*******",roles:[{role:"root",db:"admin"}]})
使用db.auth(” name”,”password”) 查看创建的用户是否存在。若为1则证明存在。
使用db.quit()退出
注意必须使用db.quit()退出,否则端口会冲突
如果出现错误可以使用repair修复
mongod --repair
在启动mongodb之前,需要先使用 sudo reboot 重启服务器,然后使用下面的代码
mongod --dbpath=/var/lib/mongo --fork --logpath=/var/log/mongodb/mongod.log --bind_ip=0.0.0.0 --auth
注意必须写–auth,否则mongoDB有localhost Exception机制。即如果没有管理员授权的角色,默认所有人都可以连接上数据库。
这样子即操作成功
下载mongoDB Compass
这是一个图形化管理界面,类似于navicat
输入账号密码点击连接
大功告成!
使用String连接
mongodb://name:password@***/?authSource=admin
如果compass不能正常打开,可以添加如下环境变量