• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    CentOS 6.4创建Mongodb副本集

    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副本集搭建的全过程
    上一篇:mongodb 随机获取一条记录的方法
    下一篇:mongodb 集群重构和释放磁盘空间实例详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    CentOS 6.4创建Mongodb副本集 CentOS,6.4,创建,Mongodb,副本,