我第一次尝试了Mongo复制集。
我在EC2上使用Ubuntu,启动了三个实例。 我使用了每个实例的私有IP地址。我选择作为主要的,下面是代码。
mongo --host Private IP Address
rs.initiate()
rs.add(“Private IP Address”)
rs.addArb(“Private IP Address”)
在这一点上一切都很好。当我转到http://ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com:28017/_replset站点时,我看到我有一个主服务器、一个辅助服务器和一个仲裁服务器。
好了,现在来做个测试。
在Primary上创建一个数据库,代码如下:
use tt
db.tt.save( { a : 123 } )
然后,我在辅助服务器上执行此操作,并得到以下错误:
db.tt.find()
error: { "$err" : "not master and slaveOk=false", "code" : 13435 }
我对MongoDB和复制很陌生,但我认为如果我在一个数据库中做了什么,它就会转到另一个数据库中。那么,如果我在其中添加一条记录,我需要做什么才能跨机器复制呢?