分片
分片要如下要素:
1. 要有N(N>2)个mongod服务做片节点
2. 要有configsvr维护meta信息
3. 要设定好数据的分片规则(configsvr才能)
4. 要启动mongos做路由
1. 创建数据文件夹
mkdir -p /home/m17 /home/m18 /home/20 /home/mlog
2.运行服务 (准备实例)
./bin/mongod --dbpath /home/m17/ --logpath /home/mlog/m17.log --fork --port 27017 --smallfiles
./bin/mongod --dbpath /home/m18/ --logpath /home/mlog/m18.log --fork --port 27018 --smallfiles
3. 运行配置服务器(准备configsvr)
.bin/mongod --help|grep configsvr
.bin/mongod --dbpath /home/m20 --logpath /home/mlog/m20.log --fork --port 27020 --configsvr
4. 启动路由器
.bin/mongos --logpath /home/mlog/m30.log --port 30000 --configdb 192.168.1.202:27020 --fork
5. 链接 configsvr 和 分片的服务(给mongos路由增加服务器/片节点)
.bin/mongo --port 3000 0 // 链接30000的mongos 服务路由
sh.addShard('192.168.1.202:27017');
sh.addShard('192.168.1.202:27018');
sh.status() // 查看状态
sh.enableSharding('shop'); // shop 库启动分片
sh.shardCollection('shop.goods', {goods_id : 1}); // 对shop库下goods进行分片,需要片键,系统会利用field的值来计算该分到哪一个片上

浙公网安备 33010602011771号