1.增加新的配置文件,並啟動mongod實例
復制代碼 代碼如下:
#14
mkdir -p /data/mongodb/shard311
./mongod -f /opt/mongodb-linux-x86_64-2.2.0/conf/mongod_3.conf
#16
mkdir -p /data/mongodb/shard32
./mongod -f /opt/mongodb-linux-x86_64-2.2.0/conf/mongod_3.conf
#23
mkdir -p /data/mongodb/shard33
./mongod -f /opt/mongodb-linux-x86_64-2.2.0/conf/mongod_3.conf
2.步驟2 初始化 set 集群
復制代碼 代碼如下:
/opt/mongodb-linux-x86_64-2.2.0/bin/mongo -port 10003
config = {_id: 'shard3', members: [
{_id: 0, host: '192.168.1.14:10003', priority:1},
{_id: 1, host: '192.168.1.16:10003'},
{_id: 2, host: '192.168.1.23:10003'}]};
rs.initiate(config);
3.增加shard
復制代碼 代碼如下:
/opt/mongodb-linux-x86_64-2.2.0/bin/mongo 192.168.1.14:10000/admin
db.runCommand( {
addshard : "shard3/192.168.1.14:10003,192.168.1.16:10003,192.168.1.23:10003",
name:"shard3",
maxsize:20480,
allowLocal:true } );
4.移除shard
復制代碼 代碼如下:
db.runCommand({"removeshard" : "shard3/192.168.1.14:10003,192.168.1.16:10003,192.168.1.23:10003"});
注意:
三台服務器clock不同步導致不能分片的問題,今天又碰見一次,同步後就好了。這個問題是不是有點太頻繁了,難道每天定時要同步三台服務器的clock?
移除shard的時候時間會比較久,這時候 printShardingStatus()的時候會顯示狀態”draining” : true.