1.杀死进程
./mongod --shutdown --dbpath /opt/data/mongo
killing process with pid: 4430

2.mongo的分片启动简介
比如在三台机器上依次使用下面的命令启动:
./mongod --fork --shardsvr --port 27018 --replSet shard2 --dbpath /opt/data/shard2 --logpath /opt/data/shard2/shard2.log --rest --logappend --oplogSize 500
./mongod --fork --shardsvr --port 27017 --replSet shard3 --dbpath /opt/data/shard3 --logpath /opt/data/shard3/shard3.log --rest --logappend --oplogSize 500
./mongod --fork --shardsvr --port 27019 --replSet shard1--dbpath /opt/data/shard1 --logpath /opt/data/shard1/shard1.log --rest --logappend --oplogSize 500

然后使用./mongo 127.0.0.1: 27019进入其中一个mongo
使用
>config = {_id: ' shard1 ', members: [
{_id: 0, host: '10.1.1.2: 27019 '},
{_id: 1, host: '10.1.1.3: 27019 '},
{_id: 2, host: '10.1.1.1: 27019 ', arbiterOnly: true}
]}
>rs.initiate(config)  #如果这一步失败,可以使用
rs.reconfig(cfg, {force:true})
之后使用rs.conf()
如果因为之前勿建立过shard集群,而名字还不对,则需要删除local表里的数据
use localdb.dropDatabase()
然后kill掉,重启几台机器的相应端口的mongo后重新实验
>rs.status()
查看状态

mongodb分布式部署全攻略_第1张图片