zoukankan      html  css  js  c++  java
  • MongoDB副本集配置实例

     在之前的博客mongodb复制篇中,介绍了一些基本分mongodb复制概念和内部运行机制。

    本文从以下两个方面介绍mongodb副本集的配置过程。

    一、复制集配置

    二、复制集启用内部认证

    一、复制集配置

    环境:

    windows操作系统

    mongodb 3.4社区版

    目标:

    在同一部机器上配置包含3个节点的复制集:rs0

     

    在mongodb已经安装好的前提下,分别为3个节点创建数据目录(用于存放当前节点的数据表)rs0-0、rs0-1、rs0-2

    分别启动(同时初始化数据目录)三个mongod实例:

    mongod --port 27017 --dbpath E:devInstallMongoDB s s0-0 --replSet rs0 --smallfiles --oplogSize 128

    mongod --port 27018 --dbpath E:devInstallMongoDB s s0-1 --replSet rs0 --smallfiles --oplogSize 128

    mongod --port 27019 --dbpath E:devInstallMongoDB s s0-2 --replSet rs0 --smallfiles --oplogSize 128

    下图为127.0.0.1:27017节点的启动过程(将三个节点分别在三个窗口启动):

     

    登录27017节点,使用rs.initiate()来初始化复制集:

     

    rs.conf()查看复制集配置信息:

    使用rs.add("<hostname:port>")将另外两个节点添加到复制集中:

    使用rs.isMaster()查看哪一个节点是主节点、哪一个是从节点

    在主节点上创建数据库repl,创建一个用户collection并添加一条记录:

    从mongo shell 登录到127.0.0.1:27018节点:

    进行查询操作、提示错误。因为从节点默认既不能进行写入操作,也不能进行读取操作。

    使用rs.slaveOk(),开启从节点的数据读取功能。

    此时便再从节点上执行数据的查询操作。使用rs.printSlaveReplicationInfo()可以查看从节点复制数据的时间点和时间延迟。

    如下图所示,27018节点中成功查询到了主节点新插入的数据,且有十秒钟的数据延时。

     

    二、复制集启用内部认证

    认证方式:1、keyfile  2、x.509 证书

    内部认证实例待续。。。。。。。

  • 相关阅读:
    根据IP定位用户所在城市信息
    Laravel根据Ip获取国家,城市信息
    基于thinkphp实现根据用户ip判断地理位置并提供对应天气信息的应用
    Linux利用OneinStack搭建环境
    五大主流浏览器及四大内核1
    手机QQ浏览器属于代理服务器吗?
    各种浏览器怎么换ip
    微信浏览器到底是什么内核?
    交谈10要素,
    广告行业的大数据处理架构实践
  • 原文地址:https://www.cnblogs.com/ahguSH/p/7477784.html
Copyright © 2011-2022 走看看