设为首页 加入收藏

TOP

MongoDB数据库把单机实例转换成副本集的步骤
2017-12-07 14:23:08 】 浏览:21
Tags:MongoDB 数据库 单机 实例 换成 副本 步骤

本文介绍如何把独立的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("
  
   <:port>")
  

使用mongo实例可分辨的主机名和端口替换 ,添加到副本集。

分片考虑

如果新的副本集时分片集群的一部分,按照如下步骤修改分片主机信息:

1. 连接到分片集群mongos实例中的一个,执行如下命令:

db.getSiblingDB("config").shards.save( {_id: "
  
   ", host: "
   
    /
    
     
      <...>" } )
     
    
   
  

使用分片名字替换 ,使用副本集名字替换 ,使用副本集成员替换 <>。

2. 重启所有mongos实例。如果可能,重启副本集所有组件

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇单个节点centos下yum安装mongoDB.. 下一篇MongoDB数据库部署副本集的教程

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

最新文章

热门文章

C 语言

C++基础

windows编程基础

linux编程基础

C/C++面试题目