如何在Ubuntu 20.04安装MongoDB 4.4后为用户授予全量权限?
在Ubuntu 20.04的MongoDB 4.4中创建全权限带密码用户
1. 连接到MongoDB实例
打开终端,直接执行命令连接本地MongoDB:
mongo
2. 切换到admin数据库
MongoDB的用户管理需在admin数据库下操作:
use admin
3. 创建全权限用户
执行以下命令创建用户,替换<你的用户名>和<你的密码>为实际值,这里给用户分配root角色(拥有所有数据库的完整权限,包括创建、读写、删除等操作):
db.createUser( { user: "<你的用户名>", pwd: "<你的密码>", roles: [ { role: "root", db: "admin" } ] } )
执行成功会返回类似Successfully added user: { "user" : "xxx", "roles" : [ { "role" : "root", "db" : "admin" } ] }的提示。
4. 配置MongoDB启用认证并确认端口监听
编辑MongoDB配置文件:
sudo nano /etc/mongod.conf
找到对应配置项修改:
- 启用认证:找到
security区块,取消注释并添加authorization: enabled:security: authorization: enabled - 确认端口与监听地址:找到
net区块,确保port为27017;若需要允许远程连接,将bindIp改为0.0.0.0(默认值127.0.0.1仅允许本地连接):net: port: 27017 bindIp: 0.0.0.0 # 仅本地连接可保持127.0.0.1
5. 重启MongoDB服务使配置生效
sudo systemctl restart mongod
6. 测试用户登录
用创建的用户登录MongoDB,替换<你的用户名>和<你的密码>:
mongo -u "<你的用户名>" -p "<你的密码>" --authenticationDatabase "admin"
登录后可执行show dbs、创建测试库等操作验证权限:
use test_db db.test_collection.insert({name: "test"}) db.test_collection.find()
能正常执行则说明权限配置成功。
内容的提问来源于stack exchange,提问作者yegor256
相关产品推荐
相关产品推荐

