将现有mongodb副本集的数据迁移到新的分片集群中,设计三种迁移方案。
方案一:先同步数据,再建立分片集群,最后配置分片集群。
导出需要迁移的数据;建立第一个副本集;将数据导入到副本集中;增加另外两个副本集;启动config server;启动mongos 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,不带分片的
server1:
/usr/local/mongo/bin/mongod --replSet shard1 --port 29017 --dbpath=/data/data/mongodb/shard11 --logpath=/data/log/shard11.log --logappend --fork
server2:
/usr/local/mongo/bin/mongod --replSet shard1 --port 29017 --dbpath=/data/data/mongodb/shard12 --logpath=/data/log/shard12.log --logappend --fork
server3:
/usr/local/mongo/bin/mongod --replSet shard1 --port 29017 --dbpath=/data/data/mongodb/shard13 --logpath=/data/log/shard13.log --logappend --fork