一、环境
1、阿里云服务器;
2、centos8.4操作系统;
lsb_release -a #查看centos的版本
3、MongoDB 4.4;
4、宝塔面板;
二、通过宝塔面板安装MongoDB数据库
1、软件商店搜索MongoDB,然后傻瓜安装。
2、验证是否安装成功
通过宝塔终端远程连接阿里云服务器,然后输入命令:mongo
数据库本机访问地址: mongodb://127.0.0.1:27017
三、数据库基本操作
1、基本命令
show dbs 显示所有的数据库
use XXX 进入指定数据库
db 表示当前所处的数据库
show collections 显示数据库中所有的集合
2、添加一个数据库
use "数据库名字" 直接进入一个新数据库就是创建了一个数据库;
3、添加一个集合
db.<collection>.insert(doc) 向集合中插入一个或者多个文档
四、设置数据库的账号密码及权限
mongodb密码和传统数据如mysql等有些区别: mongodb的用户名和密码是基于特定数据库的,而不是基于整个系统的。所有所有数据库db都需要设置密码。
1、进入admin数据库,
A:给root账户设置用户密码,创建一个超级管理员root,角色:root;root角色用于关闭数据库。
db.createUser({user: 'root', pwd: '123456', roles: ['root']})
验证是否添加成功
db.auth('root', '123456')
B: 创建管理员账户
db.createUser({ user: "admin", pwd: "123456", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
mongodb中的用户是基于身份role的,该管理员账户的 role是 userAdminAnyDatabase。admin用户用于管理账号,不能进行关闭数据库等操作。
2:给指定数据库设置账号密码
重要提示:首先要切入到你要设置的数据库
db.createUser({user: "user",pwd: "123456",roles: [ { role: "dbOwner", db: "你的数据库名字" } ]})
"dbOwner"代表数据库所有者角色,拥有最高该数据库最高权限。比如新建索引等当账号管理员和超级管理员,可以为自己的数据库创建用户了。这时候一定,一定要切换到所在数据库上去创建用户,不然创建的用户还是属于admin。如果是读写角色的话,权限设置为role: "readWrite"
3. 查看用户
show users
4. 删除用户
删除用户必须由账号管理员来删,所以,切换到admin角色
use admin
db.auth("admin","password")
删除单个用户
db.system.users.remove({user:"XXXXXX"})
删除所有用户
db.system.users.remove({})
五、通过增加 –auth 开启安全登录
mongod --dbpath /www/server/mongodb/data --auth
还可以通过在宝塔面板中修改配置文件
最后:重启后生效
六、登录
修改端口后登录命令
mongo mongodb://127.0.0.1:(修改后的端口号)
use xxx
db.auth(账号,密码)
登录成功
七、修改账号密码
进入到要修改的数据库,然后通过如下命令修改:
db.changeUserPassword('要更改的账户','重新更改的密码')