0
点赞
收藏
分享

微信扫一扫

mongodb 主从同步配置(windows)

火热如冰 2022-03-13 阅读 112
mongodb

mongodb主从同步在4.0版本以后已经不建议使用了,会提示主从同步已经不支持,但是4.0版本之前的还能使用,所以还是记录一下。

博主使用windows操作系统,mongodb3.2版本,通过修改端口进行本地测试操作

主从同步主要的操作步骤如下:

1、先搭建主数据库(127.0.0.1:27017)

在mongodb的bin目录中,cmd执行如下代码

mongod -bind_ip=127.0.0.1 -port 27017 -dbpath=F:\mongo\data\db -master

master表示这是个主数据库,bind_ip port设置主数据库的ip跟port -dbpath指定一个db存放路径

2、搭建从数据库(127.0.0.1:27018)

mongod -bind_ip=127.0.0.1 -port 27018 -dbpath=F:\mongo\data2\db -slave -source=127.0.0.1:27017

slave服务器主要使用slave参数表示这是从数据库,并通过source指定主数据库的ip。dbpath注意设置跟主数据库不同的路径。

这样就搭配好了,其中local数据库不能同步。

3、遇到的问题:

(1)Rollback Id is not initialized yet.

这个问题查不出为什么,一开始安装的时候是msi版本,可能是安装的时候出错了,重新换了个zip版本的就没有这个问题了

(2) --source 127.0.0.1:27017 != 127.0.0.27017 from local.sources collection

 这个是因为一开始创建从数据库的时候,写错了source的ip,写成了127.0.0.27017,改完重新执行的时候,local数据库的sources collection 并不会被覆盖,保存的还是原先错误的那个ip。

因此我们需要将从数据库的local.sources的数据清空,再重新执行。

 (3)从数据库执行查询的时候报: "errmsg" : "not master and slaveOk=false"

 因为默认是不能查看从数据库数据的,可以执行以下代码就可以查看从数据库数据了。

rs.salveOk()

(4)从数据库除了local数据库以外,是不能增删其他数据库以及collection的。

但是local数据库是本地数据库,不受影响。 

总结完了,后续要是有其他问题再来补充。。。

举报

相关推荐

0 条评论