1、创建保存分片数据的文件夹
$ mkdir /home/zikie/data/db/shardsvr1
$ mkdir /home/zikie/data/db/shardsvr2
$ mkdir /home/zikie/data/db/config
# log文件
$ /home/zikie/data/log/log_shardsvr1
$ /home/zikie/data/log/log_shardsvr2
$ /home/zikie/data/log/log_config
$ /home/zikie/data/log/log_mongos
2、在一台机器上模拟两个shard,启动:
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongod --dbpath=/home/zikie/data/db/shardsvr1/ --logpath=/home/zikie/data/log/log_shardsvr1 --port 27017 --shardsvr --fork
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongod --dbpath=/home/zikie/data/db/shardsvr2/ --logpath=/home/zikie/data/log/log_shardsvr2 --port 27018 --shardsvr --fork
3、启动配置服务器
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongod --smallfiles --dbpath=/home/zikie/data/db/config --logpath=/home/zikie/data/log/log_config --port 10000 --configsvr --fork
4、启动mongos
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongos --port 20000 --configdb localhost:10000 --chunkSize 5 --logpath=/home/zikie/data/log/log_mongos --fork
5、连接mongos
$ /usr/local/mongodb/mongodb-linux-i686-2.2.0/bin/mongo localhost:20000/admin
6、添加分片
$ db.runCommand({addshard:"localhost:27017",allowLocal:true})
$ db.runCommand({addshard:"localhost:27018",allowLocal:true})
查看分片信息
$ db.runCommand({listshards:1})
7、在mongos上连接上配置服务器
$ config = connect("localhost:10000") // 连接配置服务器
$ config = config.getSisterDB("config") // 选择数据库
$ test = db.getSisterDB("test") // 建立test数据库
$ db.runCommand({enablesharding:"test"}) // 开启test数据库的分片功能
$ db.runCommand({shardcollection:"test.test",key:{gid:1}}) // 以gid开启test集合的分片功能
查看分片信息
$ db.printShardingStatus()
查看集合信息
$ db.test.stats()
删除片命令
$ db.runCommand({removeshard:"localhost:27031"})
8、参考资料
http://www.doc88.com/p-397145677352.html