云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

MongoDB 配置和连接笔记

jxf315 2025-02-24 16:55:23 教程文章 35 ℃

客户端连接工具:
https://nosqlbooster.com/downloads


1.设置用户名和密码
安装MongoDB。

使用mongo工具连接数据库(双击打开就行,默认不需要认证账号)。

设置超级管理员账号和密码

use admin

db.createUser({
user: 'admin', // 用户名(自定义)
pwd: 'Abc123!@#', // 密码(自定义)
roles:[{
role: 'root', // 使用超级用户角色
db: 'admin' // 指定数据库
}]
})

设置完成,可以通过指令 show users 查看是否设置成功。

开启权限验证
找到MongoDB安装目录下的bin目录中的mongod.cfg文件,开启权限验证功能:

security:
authorization: enabled

重启MongoDB服务
使用mongo连接数据库,并登录超级管理员账号
在没有认证之前,也可以使用mongo连接数据库,只不过不能执行其他指令。

以下是两种使用超级管理员账号登录数据库的方式:

// 方式一
mongo
use admin
db.auth('admin', 'Abc123!@#')

// 方式二
mongo admin -u admin -p !@#

登录认证成功之后,就能正常操作数据库了。

为数据库设置独立的登录账号
除了设置超级管理员账号以外,还可以为每个数据库单独设置账号。

例如以下指令:

use myMongoDB // 跳转到需要添加用户的数据库

db.createUser({
user: 'tao', // 用户名
pwd: 'Abc123!@#', // 密码
roles:[{
role: 'readWrite', // 读写权限角色
db: 'myMongoDB' // 数据库名
}]
})

以上指令,为自定义的数据库myMongoDB创建了一个用户tao,它具有对这个数据库的读写权限。

可以通过以下指令验证登录:

mongo myMongoDB -u tao -p Abc123!@#

2 附录
常用命令
show users // 查看当前库下的用户

db.dropUser('testadmin') // 删除用户

db.updateUser('admin', {pwd: '654321'}) // 修改用户密码

db.auth('admin', '654321') // 密码认证


MongoDB 数据库默认角色
角色描述 角色标识
数据库用户角色 read、readWrite
数据库管理角色 dbAdmin、dbOwner、userAdmin
集群管理角色 clusterAdmin、clusterManager、clusterMonitor、hostManager
备份恢复角色 backup、restore
所有数据库角色 readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、 dbAdminAnyDatabase
超级用户角色 root


---------------------------------------

bindIp修改为 0.0.0.0 允许外网访问
authorization 修改为 enabled 开启认证

给mongodb 设置用户账号密码登录

1、进入mongodb安装目录,下面是宝塔面板的默认目录
cd /www/server/mongodb/bin

2、输入命令行mongo,进入mongodb环境
mongo

3、切换到 admin 数据库
use admin

4、给admin设置用户密码

user: 用户名
pwd: 用户密码
roles: 用来设置用户的权限,比如读,读写 等等
db.createUser({user: 'admin', pwd: 'xxxxx', roles: ['root']})

5、验证是否添加成功,db.auth(用户名,用户密码)
db.auth('admin', 'xxxxx')

如果返回 ‘1’表示验证成功, 如果是 ‘0’ 表示验证失败。

最近发表
标签列表