主页 > 知识库 > CentOS 6.4创建Mongodb副本集

CentOS 6.4创建Mongodb副本集

热门标签:广州长安公司怎样申请400电话 老虎洗衣店地图标注 呼和浩特电销外呼系统加盟 杭州人工电销机器人价格 怎么投诉地图标注 电销机器人是什么软件 苹果汽车租赁店地图标注 云南外呼系统 济南电销机器人加盟公司

MongoDB是一个开源的non-SQL数据库引擎。 MongoDB是可扩展的,是标准关系数据库管理系统(RDBMS)的替代品。 副本集可以使在节点发生故障时还能提供对您的数据的访问。

安装MongoDB

1.确保在副本集的每个成员设置好hostname
nano /etc/hostname
/etc/hostname:
europa

2.创建一个文件以保存MongoDB存储库的配置信息:
sudo touch /etc/yum.repos.d/mongodb.repo

3.如果运行的是64位系统,请使用以下配置:

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1

对于32位系统,请使用以下配置:

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/
gpgcheck=0
enabled=1

4.使用如下命令安装MongoDB:
sudo yum install mongo-10gen-server

配置网络

请正确配置网络,否则将无法向副本集添加成员。 本节将详细介绍如何将三(3)个服务器配置为MongoDB副本集。
设置hosts文件
/etc/hosts
192.168.160.1 mongo1
192.168.170.1 mongo2
192.168.180.1 mongo3

使用您自己的IP地址代替上述示例中的地址。 副本集中的成员名称也可以根据你的需要设置名称。

编辑Mongo Conf文件
1.编辑mongod.conf文件以添加IP地址和端口号。
/etc/mongod.conf:

# fork and run in background
fork = true
 
bind_ip = 192.168.135.24
port = 27017

输入您在bind ip中服务器的私有IP地址。 如果bind_ip不存在,则需要添加它。 保留默认端口号27017,并取消注释行fork = true。
2.仍然在mongodb.conf文件中滚动到底部并添加副本集信息:
/etc/mongod.conf:
replSet = rs1

在此示例中,副本集为rs1,但是,您可以根据选择更改名称。

副本集

副本集将允许您的数据“复制”或传播到集合中的所有其他节点。 它在系统故障的情况下提供冗余。 建议副本集节点个数为奇数,因为这会使选举更容易。
选举是选择哪个节点成为主节点。 选举在副本集初始化之后和主节点不可用时发生。 主节点是唯一可以接受写操作的节点。 如果主节点不可用,则进行选举选出新的主节点。 选举操作自动进行,无需人工干预。

创建副本集

mongod.conf文件在安装过程中就创建好了。 需要用这个配置文件在副本集的每个节点上启动守护程序。

1.命令如下:

mongod --config /etc/mongod.conf

守护程序启动后,输出如下。
[user@europa mongo]# mongod –config /etc/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 20955
all output going to: /var/log/mongo/mongod.log
child process started successfully, parent exiting

2.仅在副本集的一个节点上启动MongoDB客户端:
mongo --host mongo0>

3.在MongoDB提示符下,使用命令切换到admin:
use admin

您应该看到消息switched to db admin.

4.运行rs.initiate()命令,该命令将在当前节点中创建副本集。 输出应类似于以下内容:

> rs.initiate()
{
“info2” : “no configuration explicitly specified — making one”,
“me” : “192.168.160.1:27017”,
“info” : “Config now saved locally. Should come online in about a minute.”,
“ok” : 1

5.要查看当前配置,运行命令:
rs.conf()

输出应类似于以下内容:

rs.conf()
{
  "_id" : "rs1",
  "version" : 8,
  "members" : [
    {
      "_id" : 0,
      "host" : "192.168.160.1:27017"
    }
  ]
}

6.要将成员添加到副本集,请使用命令:
rs.add("mongo1:27017")

输出:
rs1:PRIMARY> rs.add(“mongo2:27017”)
{ “ok” : 1 }

7.要验证节点是否已正确添加,请再次运行rs.conf()命令。 输出应类似于以下内容:

rs1:PRIMARY> rs.conf()
{
“_id” : “rs0”,
“version” : 8,
“members” : [
{
“_id” : 0,
“host” : “192.168.160.1:27017”
},
{
“_id” : 1,
“host” : “mongo1:27017”
},
{
“_id” : 2,
“host” : “mongo2:27017”
}
]
}

验证副本集
验证副本集是否正常并且节点都进行正常通信的最佳方法是创建新的测试数据库。 默认情况下,当您连接到MongoDB时,将使用现有的测试数据库。 为了保存新数据库,需要添加数据。 创建和插入数据的过程如下:
1.创建数据库
use products>
用您喜欢的任何名称替换变量products。
2.添加数据
db.products.insert( {item: "paint", qty: 10 } )
如果您不在副本集的主节点上,您将收到消息not master。 切换到主节点并再次运行命令。 现在使用命令:
show dbs
显示数据库列表。 您的新应该出现在列表中。 连接到副本集的其他节点,查看新创建的数据库是否已复制过去。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • MongoDB的主从复制及副本集的replSet配置教程
  • Mongodb 副本集搭建问题总结及解决办法
  • Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍
  • mongodb3.4集群搭建实战之高可用的分片+副本集
  • 详解MongoDB中用sharding将副本集分配至服务器集群的方法
  • Mongodb副本集和分片示例详解
  • MongoDB副本集丢失数据的测试实例教程
  • MongoDB 复制(副本集)学习笔记
  • mongodb 4.0副本集搭建的全过程

标签:辽阳 兴安盟 泰安 无锡 鸡西 厦门 自贡 玉林

巨人网络通讯声明:本文标题《CentOS 6.4创建Mongodb副本集》,本文关键词  CentOS,6.4,创建,Mongodb,副本,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《CentOS 6.4创建Mongodb副本集》相关的同类信息!
  • 本页收集关于CentOS 6.4创建Mongodb副本集的相关信息资讯供网民参考!
  • 推荐文章