mongodb第二阶段:进阶

进阶阶段主要讲数据库安全,数据备份、恢复、导出、导入,mapreduce原理和应用,副本集,分片集群的搭建以及搭建过程中可能遇到的部分问题和解决方案
摘要由CSDN通过智能技术生成

mongodb第二阶段:进阶

第一章:数据库安全

用户管理:默认情况下,任何客户端都可以直接访问,没有认证。无管理员账户,服务器开启安全检查后则只有数据库认证的用户才能执行读写操作。

管理员:超级管理员--admin数据库中的用户被视为超级管理员

普通管理员:仅在对应的数据库中才能执行对应的权限操作,由超级管理员创建账户

注意:在服务器开启安全检查之前至少要有一个管理员账号

练习:

>use admin

>db.createUser({user:'root',pwd:'123',roles:[role:'root',db:'admin'}]})

ctl+c关闭服务器,以安全检查的方式打开服务器

>mongod --dbpath 'F:\software\mongoData' --auth

客户端连接服务器需要权限验证,下面的指令必须连接admin库才能成功授权连接到服务器

>db.auth('root','123')

>use test

....读写操作

root用户创建普通用户

>db.createUser({user:'zhangsan',pwd:'123',roles:[role:'read',db:'test'}]})

>db.createUser({user:'lisi',pwd:'123',roles:[role:'readWrite',db:'test'}]})

>db.dropUser('lisi')

>show users

权限以角色的方式赋权:

                   root ---只在admin数据库中可用

                    read

                    readWrite

 >db.system.users.find()

 第二章:副本集理论和搭建

 副本集:一个活跃节点+n个备份节点

 作用:数据同步备份

       如果活跃节点崩掉,备份节点会自动将其中一个升级为活跃节点

 mongodb复制原理:

   主节点记录在其上的所有操作oplog,备份节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证备份节点的数据与主节点一致。

   如图所示:客户端从主节点上读写数据,在客户端写入数据到主节点时,该主节点与备份节点进行数据交互保障数据一致性

   

 实践操作:

 配置并启动副本集

 1、启动三个mongodb服务,指定所属副本集replication set(F盘创建对应的数据文件夹)

mongod --port 27017    --dbpath "F:\software\mongoData"   --replSet rs0

mongod --port 27018    --dbpath "F:\software\mongoData1"   --replSet rs0

mongod --port 27019    --dbpath "F:\software\mongoData2"   --replSet rs0

2、初始化副本集

登录任意一个mongodb服务节点的客户端,设置副本集的配置并初始化副本集

replSet_config={

 _id:'rs0',

 members:[

{_id:0,host:'127.0.0.1:27017'},

{_id:1,host:'127.0.0.1:27018'},

{_id:2,host:'127.0.0.1:27019'}

 ]

};

rs.initiate(replSet_config)

rs.add("127.0.0.1:27020") //后增加节点

rs.remove("127.0.0.1:27020")//在主节点上执行减少节点操作

3、客户端操作副本集

rs.status()  查看集群状态

rs.isMaster() 查看角色信息

4、验证数据同步备份

27017节点上插入数据(假设该节点为主节点),备份节点通过rs.slaveOk()命令开启查询权限后可以看到同步数据

for(i=1;i<500;i++){

db.person.insert({name:'name'+i,age:i})

}

5、关闭主节点---备用点自动转换成主节点

use admin

db.shutdownServer()

rs.config() 查看配置信息

集群搭建过程中遇到的问题:

mongodb6.0 建集群会报下面的错误,更换3.4版本就能正常起服务器

操作环境、软件版本等信息

win10

运行结果及报错内容

重复报错的内容如下

{"t":{"$date":"2021-12-14T15:1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rose and war

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值