安装MongoDB

导入公钥

Ubuntu软件包管理器apt(高级软件包工具)需要软件分销商的GPG密钥来确保软件包的一致性和真实性。 运行此命令将MongoDB密钥导入到服务器。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5

创建源列表文件MongoDB

使用以下命令在/etc/apt/sources.list.d/中创建一个MongoDB列表文件:

echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list

如果您在 http://repo.mongodb.org/apt/ubuntu/dists/的网页上看到目录bionic,则将命令中的 xenial 替换为 bionic

更新存储库

sudo apt-get update

安装MongoDb

sudo apt-get install -y mongodb-org

MongoDB apt安装程序自动为Systemd创建了一个mongod.service文件,因此不需要再手动创建它。

启动MongoDB并将其添加为在自启动的服务:

systemctl start mongod
systemctl enable mongod

使用netstat 命令检查MongoDB 是否已经在端口27017上启动。

netstat -plntu

配置MongoDB用户名和密码

打开 mongo shell:

mongo

如果出现错误全局初始化失败:BadValue无效或无用户区域设置。 请确保LANG和/或LC_ *环境变量设置正确,请尝试命令:

export LC_ALL=C
mongo

切换到admin数据库:

use admin

创建root用户:

db.createUser({user:"admin", pwd:"admin123", roles:[{role:"root", db:"admin"}]})

描述: 使用密码admin123创建用户管理员,并将权限/角色作为root用户,数据库为admin。

输入 exit 退出MongoDB shell。

启动mongodb身份验证:
编辑mongodb服务文件

sudo vim /lib/systemd/system/mongod.service

在第9行 ExecStart 中,添加新选项 --auth

ExecStart=/usr/bin/mongod -–auth –-config /etc/mongod.conf

重载systemd服务和 Mongo服务:

systemctl daemon-reload
sudo service mongod restart

使用以下命令连接到 MongoDB shell:

mongo -u admin -p admin123 --authenticationDatabase admin

开启远程连接

修改mongodb配置文件:

sudo vim /etc/mongod.conf
# 注释 net 下 bindIp 选项
# bindIp: 127.0.0.1

重启mongo服务:

sudo service mongod restart