单节点快速测试

if( undefined == easy_install )
    wget https://bootstrap.pypa.io/ez_setup.py -O - | python
easy_install pymongo
python sharding/simple-setup.py --path=/usr/bin
/* 此处一定要写绝对路径,simple-setup.py会启动一个mongos进程,占用端口27017 */

设置配置服务器

db-center01# mongod
db-center02# mongod
...
/* 在每个数据中心启动mongod */

启动mongos,数据库集群请求的入口,每个应用服务器一个

app01# mongos --configdb db-center01, db-center02, ...
app02# mongos --configdb db-center01, db-center02, ...
...
/* 这样使mongos能找到配置服务器 */

启动分片

$ mongo app01:27017/db_name
> db.runCommand({"addShard": "host:port", "name": "shard_name"})
/* 单节点分片 */
> db.runCommand({"addShard": "rs/rs01, rs02", "name": "shard_name""maxSize": "20000"})
/*
   rs为承载这个分片的副本集,rs01为副本集的一个成员,
   这里要写出至少一个成员,mongos能推断出其他成员,
   maxSize单位为MB,此参数为建议值并非规定
*/
> db.adminCommand({"enableSharding": "db_name"})
> db.adminCommand({"shardCollection": "db.table", "key": {"key1": 1, "key2": 1}})

移除分片

> db.runCommand({"removeShard": "shard_name"})
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐