MongoDB系列文档9-分片集群的操作
MongoDB系列文档
MongoDB系列文档1-MongoDB复制集简介
MongoDB系列文档2-复制的基本架构
MongoDB系列文档3-复制集中成员说明
MongoDB系列文档4-配置MongoDB复制集
MongoDB系列文档5-MongoDB分片介绍
MongoDB系列文档6-集群中数据分布
MongoDB系列文档7-数据区分
MongoDB系列文档8-部署分片集群
MongoDB系列文档9-分片集群的操作
MongoDB系列文档10-balance操作
2.5 分片集群的操作
2.5.1 不同分片键的配置
范围片键
admin> sh.shardCollection("数据库名称.集合名称",key : {分片键: 1} )
或
admin> db.runCommand( { shardcollection : "数据库名称.集合名称",key : {分片键: 1} } )
eg:
admin > sh.shardCollection("test.vast",key : {id: 1} )
或
admin> db.runCommand( { shardcollection : "test.vast",key : {id: 1} } )bash
哈希片键
admin > sh.shardCollection( "数据库名.集合名", { 片键: "hashed" )}
创建哈希索引
admin> db.vast.ensureIndex( { a: "hashed" )
admin > sh.shardCollection( "test.vast", { a: "hashed" } )}
2.5.2 分片集群的操作
判断是否Shard集群
admin> db.runCommand({ isdbgrid : 1)}
列出所有分片信息
admin> db.runCommand({ listshards : 1)}
列出开启分片的数据库
admin> use config
config> db.databases.find( { "partitioned": true )
config> db.databases.find() //列出所有数据库分片情况}
查看分片的片键
config> db.collections.find()
{
"_id" : "test.vast",
"lastmodEpoch" : ObjectId("58a599f19c898bbfb818b63c"),
"lastmod" : ISODate("1970-02-19T17:02:47.296Z"),
"dropped" : false,
"key" : {
"id" : 1
},
"unique" : false
}
查看分片的详细信息
admin> db.printShardingStatus()
或
admin> sh.status()
删除分片节点
sh.getBalancerState()
mongos> db.runCommand( { removeShard: "shard2" )}