【mongoDB】mongoDB 主从从裁架构重启
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【mongoDB】mongoDB 主从从裁架构重启相关的知识,希望对你有一定的参考价值。
参考技术A mongoDB主从数据同步主库数据小于从库,从库回滚到跟主库同步状态
从上可知,假如原来主从数据同步出了问题,主库数据量远大于从库数据量,而你并没有察觉,某次主、从、仲裁进程全部挂了
如果先起原来从库和仲裁,将原来从库选举为现在PRIMARY,然后再启原来的主库成为现在的从库,那么就会导致原来的主库也就是现在的从库数据发生回滚
显然这不是你想看到的的情况,所以务必先启动原来的主库,让其也成为现在的主库,避免此类问题的发生!
针对primary-secondary-secondary架构,mongoDB的实例重启:
1.从primary-secondary-secondary日志中获取判断之前主节点IP
2.启动primary节点mongo进程
3.启动其他secondary节点mongo进程
$ cat hosts
$ cat start_primary-secondary-secondary.yml
$ ansible-playbook -i hosts start_primary-secondary-secondary.yml
mongoDB副本集 stateStr状态说明
https://www.jianshu.com/p/7f196c22af43
MongoDB--架构搭建(主从副本集)之主从
此章节讲述主从架构
主从架构 -- 目前已经不建议使用,推荐使用复制集
主从配置可以在配置文件中配置
从节点可以在启动之后使用命令追加主节点,db.source.insert({"host":"IP+端口"})
连接节点:mongo 127.0.0.1:29991,主节点允许读写
a、从节点可以连接,但是不允许读写,如果想读 可以设置 db.getMongo().setSlaveOk()
b、在主节点运行 db.getMongo().setSlaveOk()
1、设置文件夹目录
2、每个目录的层级 均为 DB目录,日志目录,配置文件3个
3、配置文件内容
架构:
a、主节点配置文件
dbpath=D:\MS\Master\DB
logpath=D:\MS\Master\LOG\s.log
logappend=true
port=29991
master=true
b、从节点配置文件
节点1
dbpath=D:\MS\Slave2\DB
logpath=D:\MS\Slave2\LOG\s.log
logappend=true
port=29993
slave=true
source=127.0.0.1:29991
节点2
dbpath=D:\MS\Slave2\DB
logpath=D:\MS\Slave2\LOG\s.log
logappend=true
port=29993
slave=true
source=127.0.0.1:29991
4、配置文件处理好之后,使用CMD命令行形式,mongod --config 配置文件路径 启动4个实例。启动成功的界面如下,需要依次打开多个命令shell启动。
5、使用mongo 127.0.0.1:29991 链接到主节点的实例,然后在实例里面创建集合和记录,将直接同步到其他3个从节点上面。
到达此步骤 将是成功搭建最简单的测试 主从架构。(因为里面并没有使用auth登录认证等,使用配置文件也是老的版本写法,YAML版本配置文件写法如下:)
# Where and how to store data.
storage:
dbPath: D:\MS\Master\DB
journal:
enabled: true
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: D:\MS\Master\LOG\m.log
# network interfaces
net:
port: 29991
#processManagement:
#security:
#operationProfiling:
#replication:
#sharding:
## Enterprise-Only Options:
#auditLog:
#snmp:
项目文件
http://pan.baidu.com/s/1c1BiCVY
以上是关于【mongoDB】mongoDB 主从从裁架构重启的主要内容,如果未能解决你的问题,请参考以下文章