七叶笔记 » 数据库 » MongoDB 复制(副本集)学习笔记

MongoDB 复制(副本集)学习笔记

说明:

参数--replSet设置一样,才能属于同一个复制集 参数--smallfiles可以节省空间,提高速度。

然后使用ps aux | grep mongo可以查看到启动起来的三个端口。

(2)配置

使用客户端连接mongo进行配置:

要管理配置,所以切换到admin上:

(配置是json格式)

如果没有配置ip,使用127.0.0.1

执行后,使用 printjson(rsconf)查看刚才的配置。

然后执行初始化:

查看节点:

删除节点:

添加节点:

切换节点:

默认是在27017端口,即rs2:PRIMARY>状态, 退出mongo客户端命令模式, 切换到另一个端口:

即切换到rs2:SECONDARY>状态。

测试:

在主服务上,创建库和集合,

去从服务上查看

show dbs

然后看到有错误,具体错误信息是:

... "errmsg" : "not master and slaveOk=false", ...

是因为slave默认不允许读写:

然后就可以看到主服务器创建的库和集合了。

同理27019也需要执行这个命令才能自动同步和读写。

当主服务器27017停掉的时候, 第二个27018就自动变成主服务器master状态。 但是27019需要再次执行rs.slaveOk()才能自动同步读写。

shell脚本:

希望本文所述对大家MongoDB数据库程序设计有所帮助。

相关文章