如果是这样,怎么样?
当我第一次创建副本集时,我选择了一个令人困惑的名字; 我现在想改变它.
提到了副本集名称/etc/mongod.conf,我不确定它何时读取/重读.由于副本集名称也可以作为命令行参数传递,我假设(并且当前正在测试)以下内容:
replSetCLI参数或replSet值/etc/mongod.conf,然后重新启动换句话说,我假设我的原始问题的答案是"不,你必须重启"或"否,副本集名称是不可变的".我可能很快就会想到这一点,因为我在本地尝试它.
kri*_*ina 34
以下是停机时间的方法:
使用新的副本集名称更新每个服务器上的local.system.replset doc. 你必须在这里改变每个服务器.
以下是如何更新mongo shell中的local.system.replset:
use local
var doc = db.system.replset.findOne()
doc._id = 'NewReplicaSetName'
db.system.replset.save(doc)
db.system.replset.remove({_id:'OldReplicaSetName'})
Run Code Online (Sandbox Code Playgroud)小智 8
克里斯蒂娜的答案很好,但第3步可以使用更多的解释.在你的mongo shell中,编辑db.system.replset,如下所示:
use local
var doc = db.system.replset.findOne()
doc._id = 'NewReplicaSetName'
db.system.replset.save(doc)
db.system.replset.remove({_id:'OldReplicaSetName'})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12873 次 |
| 最近记录: |