ent)
2019-06-13T10:55:34.234+0800 restoring users from /data/mongobak/2019-06-12/admin/system.users.bson.gz
2019-06-13T10:55:34.312+0800 done
恢复完成,在登录mongo查看,恢复数据库的情况。
rs0:PRIMARY> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
reporting 0.000GB
test 0.000GB
rs0:PRIMARY> use test
switched to db test
rs0:PRIMARY> show collections
users
rs0:PRIMARY> db.users.find()
{ "_id" : ObjectId("5cff79e8993e70290a081d04"), "name" : "sue", "age" : 26, "status" : "pending" }
可以看出之前的记录已经恢复了。
注意:如果备份时,MongoDB是拥有用户名和密码才能进行登录的,在恢复之后,用户名和密码也是可以使用的。如果需要在使用认证登录,需要将下面信息添加的配置文件mongod.conf:
然后重启mongo服务。
5、关闭刚恢复的MongoDB,将数据目录同步到另一台服务器上,作为Secondary
通过之前,确认该台服务器上的mongo是无任何数据。将Primary服务上的 /data/mongodb/data 同步到 Secondary服务器上 /data/mongodb/data
6、依次开启Primary、Secondary、Arbiter的mongo服务
7、在Primary服务器上,将Secondary、Arbiter加入到Replica Set集群中来
查看当前Replica Set集群的配置
可以看到当前Replica Set集群中就一台服务器
将Secondary、Arbiter加入到Replica Set集群中
再次查看状态:
加入成功。
开启认证访问
在三台服务器的配置文件中添加:
然后依次关闭:Arbiter Secondary Primary
依次开启:Primary Secondary Arbiter