方案三:先建立分片集群,再配置分片集群,最後同步資料。
匯出資料;建立分片集群;配置config server;配置config server;配置分片集群;匯入資料。
1. 匯出資料
/usr/local/mongo/bin/mongodump --host 172.16.8.134:29017 -d 201 -o /data/data/mongo/tmp/ --directoryperdb
並且將該資料同步到131的/data/data/mongodb/tmp目錄中
2. 建立分片集群
2.1 建立shard1分片集群
2.1.1 啟動shard1的replica set
server1:
server2:
server3:
2.1.2 初始化replica set
連線任意乙個mongos例項,如server1
cd /usr/local/mongo/bin
./mongo --port 29017
config=,,]}
rs.initiate(config)
rs.status()
2.2 建立shard2分片集群
2.2.1 啟動shard2的replica set
server1:
server2:
server3:
2.2.2 初始化replica set
連線任意乙個mongos例項,如server1
cd /usr/local/mongo/bin
./mongo --port 29018
config=,,]}
rs.initiate(config)
rs.status()
2.3 建立shard3分片集群
2.3.1 啟動shard3的replica set
server1:
server2:
server3:
2.3.2 初始化replica set
連線任意乙個mongos例項,如server1
cd /usr/local/mongo/bin
./mongo --port 29019
config=,,]}
rs.initiate(config)
rs.status()
3. 配置config server
server1:
server2:
server3:
4. 配置mongos server
server1:
server2:
server3:
5. 配置分片集群
5.1 連線任意乙個mongos例項,如server1,並切換到admin
cd /usr/local/mongo/bin
./mongo 172.16.8.131:40000/admin db
5.2 加入shards
db.runcommand();
db.runcommand();
db.runcommand();
5.3 listing shards
db.runcommand()
5.4 啟用資料庫分片
db.runcommand()
5.5 建立collection的片鍵索引
use 201
db.customer_user_mst.ensureindex()
db.user_attr_mst.ensureindex()
5.5 配置collection分片
use admin
db.runcommand(})
db.runcommand(})
6. 匯入資料
./mongorestore --host 172.16.8.131:40000 -d 201 --directoryperdb /data/data/mongodb/tmp/201/
mongodb分片集群資料遷移(方案一)
將現有mongodb副本集的資料遷移到新的分片集群中,設計三種遷移方案。方案一 先同步資料,再建立分片集群,最後配置分片集群。匯出需要遷移的資料 建立第乙個副本集 將資料匯入到副本集中 增加另外兩個副本集 啟動config server 啟動mongos server 配置分片集群。1.匯出需要遷移...
mongodb分片集群資料遷移(方案二)
方案二 先建立分片集群,再同步資料,最後配置分片集群。匯出資料 建立分片集群 配置config server 配置mongos server 匯入資料 配置分片集群。1.匯出資料 usr local mongo bin mongodump host 172.16.8.134 29017 d 201 ...
MongoDB集群分片
什麼是sharding?說白了就是把海量資料水平擴充套件的集群系統,資料分表儲存在sharding的各個節點上。mongodb的資料分開分為chunk,每個chunk都是collection中的一段連續的資料記錄,一般為200mb,超出則生成新的資料塊。構建sharding需要三種角色,shard伺...