SQL

MongoDB 运维操作(三)复制(副本集)

上一篇:《MongoDB 运维操作(二)备份与恢复》

介绍

MongoDB 主节点记录在其上的所有操作,从节点定期轮询主节点获取这些操作,

然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致。

MongoDB 复制结构图如下所示:

1.jpg

以上结构体中,客户端从主节点读取数据,在客户端写入数据到主节点时,主节点与从节点进行数据交互,保障数据的一致性。

副本集特征:

  • N 个节点的集群

  • 任何节点均可作为主节点

  • 所有写入操作都在主节点上

  • 自动故障转移

  • 自动恢复

副本集实例

副本集结构规划

服务 端口
Primary Server 27017
Secondary Server 1 27018
Secondary Server 2 27019
Arbiter Server 27020

创建运行目录

配置三台服务实例及一台仲裁实例

r0 config(主数据库:数据节点)

r1 config(从数据库:数据节点)

r2 config(从数据库:数据节点)

arbiter config(仲裁数据库:仲裁节点)

集群私钥

配置 root 管理员

2.png

启动数据库

3.png

初始化副本集

4.png

增加仲裁数据库节点

5.png

【注】仲裁节点的作用是监控数据节点,当主数据库异常宕机,投票选出剩余数据节点之一成为主数据库。若原主数据库回归,则以从数据库的形式进行服务,而不会变回主数据库。

补充

强制更新副本集配置

SECONDARY 可读

SECONDARY 节点默认不可读,若要读取 SECONDARY 节点,需要在 SECONDARY 节点上输入命令:

DEMO 脚本

下一篇:《MongoDB 运维操作(四)分片技术》

OceanicKang
心若浮沉,浅笑安然
查看“OceanicKang”的所有文章 →

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关推荐