Skip to content
On this page

MongoDB

安装

以下是Ubuntu 官方 MongoDB 安装指南的缩写。如果您遇到问题,请改用该指南。

wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

1
2
3
4
5

验证 MongoDB 的安装。你应该有 5.0 版:

mongod --version
//db version v5.0
1
2

启动mongod服务并验证服务状态:

sudo systemctl start mongod
sudo systemctl status mongod
1
2

配置 MongoDB

一般 MongoDB 管理是通过 MongoDB Shell 完成的mongo。MongoDB 的默认安装侦听端口27017并且可以在本地访问。访问外壳:

mongo
1

切换到内置admin数据库:

use admin
1

nodebb创建一个管理用户(与我们稍后创建的用户不同)。<Enter a secure password>用您自己选择的密码替换占位符。确保<and>也不会被遗忘。

db.createUser( { user: "admin", pwd: "<Enter a secure password>", roles: [ { role: "root", db: "admin" } ] } )
1

admin启用授权后,此用户的范围仅限于管理 MongoDB 的数据库。

最初创建一个不存在的数据库use。添加一个名为的新数据库nodebb

use nodebb
1

将创建数据库并将上下文切换到nodebb. 接下来创建nodebb具有适当权限的用户:

db.createUser( { user: "nodebb", pwd: "<Enter a secure password>", roles: [ { role: "readWrite", db: "nodebb" }, { role: "clusterMonitor", db: "admin" } ] } )
1

readWrite权限允许 NodeBB 从nodebb数据库中存储和检索数据。该clusterMonitor权限为 NodeBB 提供了对查询数据库服务器统计信息的只读访问权限,这些统计信息随后显示在 NodeBB 管理控制面板 (ACP) 中。

退出 Mongo Shell:

quit()
1

/etc/mongod.conf通过附加以下行在MongoDB 配置文件中启用数据库授权:

vi /etc/mongod.conf
1
security:
  authorization: enabled
1
2

验证

重新启动 MongoDB 并验证之前创建的管理用户可以连接:

sudo systemctl restart mongod

mongo -u admin -p your_password --authenticationDatabase=admin

1
2
3
4

如果一切配置正确,Mongo Shell 将连接。退出外壳。

Released under the CC-BY-SA-4.0 License.