mongodb 中怎么设置分片集群

52次阅读
没有评论

共计 1272 个字符,预计需要花费 4 分钟才能阅读完成。

自动写代码机器人,免费开通

今天就跟大家聊聊有关 mongodb 中怎么设置分片集群,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

1、先 enable sharding,开启数据库的分片功能

mongos use admin

mongos db.runCommand({enablesharding : test1})

2、对具体 collection 做分片, 选择片键为 _id

mongos db.runCommand({shardcollection : test1.test1 , key :{ _id :1}})

{collectionsharded : test1.test1 , ok : 1}

3、观察 2 个分片 shard_01  shard_02 tunks 数量

########### 删除分片 ##################

1、保证均衡器是开启的

mongos use admin

mongos sh.setBalancerState(true);

或者 mongos sh.startBalancer();

2、将已分片的集合全部迁移到其他分片

use admin

db.adminCommand({removeShard : shard_name})

3、检查数据块迁移的状态,remaining 字段表示剩余数据块的数量

use admin

db.runCommand({ removeShard: shard_name} )

===============##### 删除未分片的数据库 #######============

1、查看未分片的数据库

use config

db.databases.find({$or:[{ partitioned :false},{primary : shard_name}]})

2、修改数据库的主分片

db.runCommand({ movePrimary: db_name , to: new_shard})

=========########## 刷新 mongos 的配置缓存 ###########==========

强制 mongos 从 config server 同步配置信息,并刷新缓存

use admin

db.adminCommand({flushRouterConfig: 1})

===============oplog 做每天自动日志轮动 ========================

1、在配置文件中添加参数

logpath=/data/shard_01/mongodb.log 

logappend=true

2、设置定时任务

0 0 * * * /bin/kill -SIGUSR1 `cat /data/shard_01/mongodb.log`

mongodb 3.6 以上版本 可以在线修改 oplog 大小

use local

db.adminCommand({replSetResizeOplog: 1, size: 100000})

看完上述内容,你们对 mongodb 中怎么设置分片集群有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计1272字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)