方法ステップの一貫したスナップショットを追加するノードからセットMongoDBのレプリカ

環境説明

マスターノード192.168.0.1:27002


ノードから二

192.168.0.2:27002

192.168.0.3:27002


目標:192.168.0.3から第3のノードを追加することの一貫性のあるスナップショット


手順説明:

1)プライマリノード上で一貫したスナップショットバックアップであります

2)、ノードからの回復の唯一のデータ部分を回復するための一貫性のあるスナップショットであり、oplogを回復するために起動しません

3)初期化oplog.rs収集と回復oplogレコード

2つの初期化db.replset.electionローカルデータベースの4)他のセット、db.system.replset

5)(このステップは、認証モード、例えば前に、レプリケーション構成セットを開けない)構成データベースを変更し、データベースを再起動し、

6)rs.add有する(「HOST_NAME:PORT」からクラスタにノードを追加する)コマンド

7)。()観察し、rs.statusとの整合性チェックデータの整合性および同期ステータス



マスタノードまたは他の2つのバックアップ・データ・ノードから:

mongodump -uroot -ptest --host 192.168.0.2 --authenticationDatabase =管理者--port = 27002 --oplog -o /データ/モンゴ/バックアップ


第二に、SCPのバックアップファイルとの192.168.0.3にそれを復元します:

SCP -r /データ/モンゴ/バックアップ[email protected]/data/mongo 


例えばプロモーターの単一のように三つの第3のノード。

注意:次のレプリカセットパラメータをコメントアウトする必要性を

#払い=真

#replSet = test27002

#replSet = repl_mongo

#keyFile = /data/mongo/27002/replSet.key


#蘇 - モンゴ


$のmongod -f /data/mongo/27002/conf/mongodb.conf 



192.168.0.3で一貫性のスナップショットの回復:

$ mongorestore --oplogReplay --port=27002 /data/mongo/backup


创建oplog.rs集合并初始化大小:

>use local


>db.createCollection("oplog.rs",{"capped":true,"size":100000000})


恢复一致性备份的oplog.rs集合的数据到192.168.0.3:

$ mongorestore -d local -c oplog.rs --port=27002 /data/mongo/backup/oplog.bson


需要查询主节点replset.election集合的数据并将这些数据存储到192.168.0.3节点

主DB上的操作:

$ mongo 192.168.0.1:27002/admin -uroot -ptest


test27002:PRIMARY> use local

switched to db local

test27002:PRIMARY>  db.replset.election.find()

{ "_id" : ObjectId("5d64912a1978c9b194cf7cc5"), "term" : NumberLong(2), "candidateIndex" : NumberLong(2) }


192.168.0.3节点上保存主DB上replset.election集合的数据内容:

use local

db.replset.election.save({ "_id" : ObjectId("5d64912a1978c9b194cf7cc5"), "term" : NumberLong(2), "candidateIndex" : NumberLong(2) })

关闭第三个从节点,以副本集方式启动mongodb:

> use admin

switched to db admin

> db.shutdownServer()

server should be down...

2019-09-01T18:10:57.337+0800 I NETWORK  [js] trying reconnect to 127.0.0.1:27002 failed

2019-09-01T18:10:57.337+0800 I NETWORK  [js] reconnect 127.0.0.1:27002 failed failed 


修改第三个从节点配置,注释去掉:

auth = true

replSet = test27002

keyFile = /data/mongo/27002/replSet.key

https://wenku.baidu.com/view/4bac53c8326c1eb91a37f111f18583d048640f38

以副本集方式启动mongodb

$ mongod -f  /data/mongo/27002/conf/mongodb.conf 


主节点执行添加节点操作:

mongo 192.168.0.1:27002/admin -uroot -ptest


>rs.add("172.31.30.82:27001");


主节点上写入数据:

use test

for (var i=0;i<=500;i++) { db.test.insert({id:i,name:"chenfeng"}) }

郑州不孕不育医院:http://yyk.39.net/zz3/zonghe/1d427.html

登录第三个从节点进行数据验证:

>use test

>db.test.count()


おすすめ

転載: blog.51cto.com/14510269/2438330
おすすめ