MongoDB常用运维命令
# 查看Mongodb版本信息 mongos> db.version() # 关闭mongodb服务 mongos> use admin mongos> shutdownServer() # 查看当前数据库 mongos> db # 查看数据库信息 mongos> db.stats() # 查看表信息 mongos> db.表名,stats() # 查看所有用户及权限 mongos> use admin mongos> db.system.users.find() # 删除用户 mongos> use 数据库名 mongos> db.system.users.remove({user:"用户名"}) # 创建用户并授权 mongos> use 数据库名 mongos> db.createUser({user: "用户名",pwd: "密码",roles: [{ role: "权限", db: "数据库名" }]}) # 授权验证 mongos> use 数据库名 mongos> db.auth("用户名","密码")//返回1表示认证成功 # 查看集合索引 mongos> use 数据库 mongos> db.集合名.getIndexes() # 查看集合索引大小 mongos> use 数据库 mongos> db.集合名.totalIndexSize() # 删除集合所有索引 mongos> use 数据库 mongos> db.集合名.dropIndexes() # 删除集合指定索引 mongos> use 数据库 mongos> db.集合名.dropIndex("索引名称") # 删除片键 mongos> use 数据库 mongos> db.collections.remove({_id:"ts-taxi.driverPoint"}) # 删除集合 mongos> use 数据库 mongos> db.集合名.drop() # 删除分片节点 mongos> db.runCommand({removeShard:"shard1"}) # 列出所有数据库分片情况 mongos> use config mongos> db.databases.find # 查看分片情况 mongos> use 数据库 mongos> db.集合(表)名.stats() # 列出开启分片的数据库 mongos> use config mongos> db.databases.find( { "partitioned": true } ) # 列出所有数据库 mongos> show dbs # 列出所有分片信息 mongos> use admin mongos> db.runCommand({ listshards : 1}) # 指定数据库里需要分片的集合和片键 mongos> use admin mongos> db.runCommand({shardcollection : "数据库名.集合",key : {_id: 1}}) # 列出数据库集合(表) mongos> use 数据库名 mongos> show collections 或 mongos> show tables # 指定数据库开启分片 mongos> db.runCommand({enablesharding :"数据库名"}) # 查看分片的详细信息 mongos> sh.status() mongos> db.printShardingStatus() # 查看mongo集群是否开启了balance状态 mongos> sh.getBalancerState() # 连接mongo集群的路由节点 mongos> sh.isBalancerRunning() # 判断是否Shard集群 mongos> db.runCommand({ isdbgrid : 1}) # 添加分片节点 mongos> use admin mongos> sh.addShard("shard1/172.18.137.156:27001,172.18.137.157:27001,172.18.137.151:27001")
转:https://mp.weixin.qq.com/s/r5INPGRd7SYugeq6EWILZg