创建用户
read
readWrite
root
创建超级管理用户
首先选中admin
use admin
然后执行
db.createUser(
{
user:'admin',
pwd:'123',
roles:[{role:'root',db:'admin'}]
}
)
然后退出连接 exit 或者 Ctrl+c
1.修改/etc/mongo.conf 文件
2.打开其中的安全配置
security:
authorization: enabled
3.退出保存 并重置
用创建的超级管理员账号登录
mongo -u 'ljh' -p 'ljh123' --authenticationDatabase admin
插看所有用户
use admin
db.system.users
创建一个普通用户(必须是超级管理才能创建)
选中你要设置权限的数据库
use colname
然后在这个数据库下进行操作
db.createUser(
{
user:'t1',
pwd:'123',
roles:[{role:'readWrite',db:'test1'}]
}
)
用这个用户登录
mongo -u 'ljh' -p 'ljh123' --authenticationDatabase generalUser
修改密码
use 数据库
db.updateUser('用户名',{roles:'' , db:' '})
删除用户权限
use 数据库
db.revoleRolesUser('用户名',[{'role','权限','db':'数据库'}])
添加权限
use 数据库
db.grantRolesToUser('用户名'[{role:'',db:''}])
删除用户(在当前用户所有权限的数据库下删除)
use 数据库
db.dropUser('用户名')
删除用户(在admin数据库下)
use admin
db.system.users.remove({user:'用户名'})
数据库的备份与恢复
mongo -h 127.0.0.1:27017 -d 数据库名 -o ~地址
其每个数据的意义
-h: MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
-d: 需要备份的数据库实例,例如:test
-o: 备份的数据存放位置,例如:c:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
恢复
mongorestore -h 127.0.0.1:27017 -d 数据库名称 --dir ~/Desktop/数据库备份的路径
备份所有数据库
mongodump -h ip:port -o 路径
恢复所有数据库
mongorestore -h ip:port --dir 路径
导出文件(jon文件)
mongoexport -d dbname -c colname -o path(路劲)/文件名.json --type json
导入 (json)
mongoexport -d colname -c collectionname --file filename --headerline --type json
导出 文件(csv文件)
mongoexport -d dbname -c colname -o path(路劲)/文件名.csv --type csv -f '键的名称'
导出(csv)
mongoexport -d colname -c collectionname --file filename --headerline --type csv -
主从副本集
(实时备份、防止数据灾难、读写分离、无宕机行为)
实现:
必须要保证一主一从
开启服务 服务处于等待状态
mongod --bind_ip ip --port port --dbpath(数据备份路径) --replSet (标识)rs0
连接服务
mongo --host (ip) --port (port)
确定主节点(主窗口)
re.iniiniate()(初始化主节点)
添加从服务器
rs.add('ip:port')
查看节点信息
rs.status()
激活从节点
rs.slaveOk()
网友评论