首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Mongodb的副本集部署(3)

Mongodb的副本集部署(3)

第五步:
下面我们进行数据同步测试:
//向PRIMARY(主节点)写入一条数据
use test
db.say.insert({"text":"Hello World"})


//进入SECONDARY(副节点)查看数据是否同步
PS:SECONDARY不能写,而设置slaveOk后,可能从SECONDARY读取数据
默认情况下SECONDARY不能读写,要设定db.getMongo().setSlaveOk();才可以从SECONDARY读取
replSet里只能有一个Primary库,只能从Primary写数据,不能向SECONDARY写数据

先ctrl+alt+f5进入控制台5端口2的mongodb的shell
进入mongodb的安装目标的bin目录 运行下面代码:
./mongo --port 28011
db.say.find()
rs.slaveOk()
db.say.find()





发现没运行rs.slaveOk()开启权限时不能进行读取。



开启权限后,能进行读取,发现已经数据已经同步备份。


//ARBITER 读取写入都不能
先ctrl+alt+f6进入控制台6端口3的mongodb的shell
进入mongodb的安装目标的bin目录 运行下面代码:
./mongo --port 28012
db.say.find()
rs.slaveOk()
db.say.find()
db.say.insert({"text2":"Hi"})

注意arbiter仲裁节点只投票,不接收复制的数据!,不接收PRIMARY写入的mydb的数据!
返回列表