MongoDB复制集创建索引降低负载

正常创建索引:在主节点上创建,之后从节点会自动创建。这个适用于小数据量,在数据量很大的时候,会造成成员不可用。

每次只在一个节点上创建索引,步骤如下:
1、关闭1个备份节点

use admin;

db.shutdownServer()

2、将这个节点以单机模式运行:配置文件中更改原来的端口为其它端口,并注释掉复制集名称配置,之后重启该节点

vim ./mongodb.conf

port=47017 #端口改成其它的

#replSet=test       # 副本集名称注释掉

3、在单机模式下创建索引

db.col.ensureIndex({"title":1}) ##创建索引,title字段正序

db.col.getIndexes() #查看所有索引

 

4、创建完索引后,将该节点作为副本集成员重新启动。恢复之前的配置参数(第二步中)

 

5、对副本集中每个备份节点重复做1~4步。

6、如果晚上业务不是很多,晚上在主上建立(主上建立后,从上虽然会复制操作,但是从已经建立好了索引。不会再建立)

 

7、如果业务量不变的话,可以将主节点退位,之后执行上边1~4步即可。之后再换回来主

猜你喜欢

转载自blog.csdn.net/donghaixiaolongwang/article/details/79884996
今日推荐