MongoDB:把单机实例转换成副本集
来源:互联网 发布:睿聚淘宝培训 编辑:程序博客网 时间:2024/06/14 15:12
本文介绍如何把独立的mongo实例转换成包含3个成员的副本集。开发和测试使用独立实例,生产使用副本集。如何安装独立的mongo实例本文不再赘述。
如果在部署副本集时还没有安装mongo实例,可以查看部署副本集;
步骤
- 停止独立的mongo实例服务。
- 重启实例。使用
--replSet
选项配置副本集的名字。例如,下面命令启动独立的实例作为副本集rs0的一个成员。它使用了独立的数据库路径/srv/mongodb/db0
,该路径必须事先存在,否则启动报错。
mongod --port 27017 --dbpath /srv/mongodb/db0 --replSet rs0
如果程序连接了不止一个副本集,那么每个副本集要有唯一的名字。有些驱动根据副本集名字对副本集连接分组。
3. 连接到mongo实例。
4. 使用rs.initiate()
初始化新的副本集。
rs.initiate()
现在就可以对副本集操作了。
可以使用rs.conf()
查看副本集配置,使用rs.status()
检查副本集状态。
扩展副本集
通过以下步骤添加副本集成员:
1. 在两个不同的系统,启动两个独立的mongo实例。
2. 在最初的mongo实例连接上(之前独立的实例),执行如下命令把新实例添加到副本集:
rs.add("<hostname><:port>")
使用mongo实例可分辨的主机名和端口替换<hostname>
和<port>
,添加到副本集。
分片考虑
如果新的副本集时分片集群的一部分,按照如下步骤修改分片主机信息:
1. 连接到分片集群mongos实例中的一个,执行如下命令:
db.getSiblingDB("config").shards.save( {_id: "<name>", host: "<replica-set>/<member,><member,><...>" } )
使用分片名字替换<name>
,使用副本集名字替换<replica-set>
,使用副本集成员替换<member,><member,><>
。
2. 重启所有mongos实例。如果可能,重启副本集所有组件。
阅读全文
0 0
- MongoDB:把单机实例转换成副本集
- MongoDB的安装(单机,副本集,分片)
- mongodb单机修改为副本集的步骤
- MongoDB单机版副本集搭建--测试、开发
- mongodb 分片集群 在线添加副本集实例并升级成primay主库
- mongodb 副本集+分片
- mongodb 系统 副本集
- mongoDB 副本集配置
- Mongodb副本集配置
- mongodb副本集
- Mongodb副本集
- mongodb 副本集 创建
- mongodb 副本集 维护
- mongodb副本集搭建
- Mongodb实现副本集
- mongodb副本集创建
- MongoDB副本集
- Mongodb 实现副本集
- 关于指针(1)
- java包及访问权限
- Linux性能分析工具top命令详解
- 个人模板【最长公共连续子序列】
- [Kafka]
- MongoDB:把单机实例转换成副本集
- MongoDB学习第2天,安装 配置 开始练习
- hdu 1026 Ignatius and the Princess I
- Interllij IDEA 配置 Tomcat 7.0 报以下错误
- "What does my face tell you, Signorina?"
- TMS320F28335生成SPWM
- [Archlinux] Swap Cap:Esc
- Python代码是编译执行还是解释执行?
- [Kafka]