MongoDB 副本集的搭建过程

今天的内容说下副本集的搭建过程吧。

下面的例子,是我自己在一台腾讯云服务器上搭建的过程,每个操作步骤都有,写出来大家看看。

本次操作是搭建一主,一从、一仲裁的三节点副本集,具体的过程如下:

1、创建节点目录

mkdir -p /data/mongo_28018/{data,log}
mkdir -p /data/mongo_28019/{data,log}
mkdir -p /data/mongo_28020/{data,log}

2、创建配置文件,配置文件内容如下:

storage:
  dbPath: /data/mongo_28018/data
  journal:
    enabled: true

systemLog:
  destination: file
  path: /data/mongo_28018/log/mongodb.log
  logAppend: true

#security:
  #authorization: enabled          ## 测试环境关闭认证,正式环境需要开启认证

processManagement:
  fork: true

net:
  port: 28018
  bindIp: 127.0.0.1

replication:
  replSetName: yeyz_repl0

这里需要注意,配置文件路径一般在对应的Mongodb目录下面,每个配置文件端口都不一样,需要自行调整。

我们搭建的副本集的名字叫做yeyz_repl0

3、启动三个实例

mongod -f /data/mongo_28018/mongodb.conf 
mongod -f /data/mongo_28019/mongodb.conf 
mongod -f /data/mongo_28020/mongodb.conf 

4、初始化集群

使用mongo --port=xxxxx登录到实例上,初始化副本集

use admin
rs.initiate(
{_id:"yeyz_repl0",
"members":[
                {
                    "_id":1,
                    "host":"127.0.0.1:28018"
                },
                {
                    "_id":2,
                    "host":"127.0.0.1:28019"
                },
                {
                    "_id":3,
                    "host":"127.0.0.1:28020",
                    "arbiterOnly":true
                }
            ]
})

5、登录到实例上,使用rs.conf查看实例状态。

6、添加副本集认证

6.1 生成一个keyFile
openssl rand -base64 756 > keyFile
修改keyFile的权限为400
chmod 400 keyFile
6.2 拷贝到各个文件夹下/data/mongoxxxxx/
6.3 修改配置文件,添加security项:
security:
  keyFile: /data/mongo_28018/keyFile
6.4 重启即可

7、登录到其中一台节点上,添加默认账号即可

db.createUser({user:"mongod",pwd:"mongod",roles:[{role:"root",db:"admin"}]})

8、登录到任意一台上面,查看结果:

[root@VM-0-14-centos data]# repls_login 28019
MongoDB shell version v4.0.6
connecting to: mongodb://127.0.0.1:28019/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("cfaeea74-6371-4128-83ff-bf94c01f5f78") }
MongoDB server version: 4.0.6
yeyz_repl0:PRIMARY> 
yeyz_repl0:PRIMARY> 

显示primary即为主节点,其他节点为从节点。

以上就是MongoDB 副本集的搭建过程的详细内容,更多关于MongoDB 副本集的搭建的资料请关注我们其它相关文章!

(0)

相关推荐

  • mongodb3.4集群搭建实战之高可用的分片+副本集

    前言 最近因为工作的原因,在学习使用mongodb数据库,mongodb是最常用的nodql数据库,在数据库排名中已经上升到了前六.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置服务器等. 相关概念 先来看一张图: 从图中可以看到有四个组件:mongos.config server.shard.replica set. mongos,数据库集群请求的入口,

  • Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍

    Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍 一.基本环境: mongdb3.0.5数据库 spring-data-MongoDB-1.7.2.jar mongo-Java-driver-3.0.2.jar Linux-redhat6.3 tomcat7 二.搭建mongodb副本集: 1.  分别在三台linux系统机上安装mongodb,(为避免和机器上原有的mongodb端口冲突,这里设为57017): 192.168.0.160 192.168.0.

  • Mongodb 副本集搭建问题总结及解决办法

    Mongodb 副本集搭建问题总结及解决办法 Mongodb数据库的副本集是由多台服务器组成,基中一台是主节点,其它为从节点,如果主节点宕机就自动切换到任意一个从节点.如果以前的主节点修复完成和正常运行就自动变成从节点,从节点不能查询数据.也可以在一台服务器装多个Mongodb端口不一样. 在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天主要负责

  • mongodb 4.0副本集搭建的全过程

    前言 近期有同学问mongodb副本集难不难部署,我的回答是不难,很快,几分钟搞定,比mysql MHA简单的不止一点半点. 那么到底如何部署呢?请看下文. 1.  准备工作 1.1 下载软件 选择版本并下载mongodb的软件,注意操作系统版本等.本次我选用的是percona分支的mongodb 4.2.8版本搭建,操作系统为centos6 cd /usr/local/ wget https://www.percona.com/downloads/percona-server-mongodb-

  • MongoDB 副本集的搭建过程

    今天的内容说下副本集的搭建过程吧. 下面的例子,是我自己在一台腾讯云服务器上搭建的过程,每个操作步骤都有,写出来大家看看. 本次操作是搭建一主,一从.一仲裁的三节点副本集,具体的过程如下: 1.创建节点目录 mkdir -p /data/mongo_28018/{data,log} mkdir -p /data/mongo_28019/{data,log} mkdir -p /data/mongo_28020/{data,log} 2.创建配置文件,配置文件内容如下: storage:   db

  • 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副本集丢失数据的测试实例教程

    在MongoDB副本集的测试中发现了一个丢数据的案例. 1. 概要描述 测试场景为:一主一从一验证 测试案例 step1 :关闭从副本: step 2 :向主副本中插入那条数据: step 3 :关闭主副本: step 4 :开启辅助副本,此副本升级为主副本,这是后会看到新的主副本没有刚才插入的几笔数据. ----测试时,请注意测试步骤. step 5 :原主节点 再次加入到集群中后,会变成新的辅助副本.测试插入的数据会产生回滚. 2. 具体的测试步骤 (1)测试服务器,原测试环境 主Serve

  • redis集群搭建过程(非常详细,适合新手)

    目录 redis集群搭建 一.Redis Cluster(Redis集群)简介 二.集群搭建需要的环境 三.集群搭建具体步骤如下(注意要关闭防火墙) 四.结语 redis集群搭建 在开始redis集群搭建之前,我们先简单回顾一下redis单机版的搭建过程 下载redis压缩包,然后解压压缩文件: 进入到解压缩后的redis文件目录(此时可以看到Makefile文件),编译redis源文件: 把编译好的redis源文件安装到/usr/local/redis目录下,如果/local目录下没有redi

  • mongodb linux下集群搭建过程

    mongodb的集群结构如上图 网上有个mongo3.0的集群例子: https://www.jb51.net/article/191388.htm router提供入口,mongo客户端通过router连入集群(本例只配置一个route集群) Config Servers辅助记录数据分片(一个集群) Shard为数据分片集群(本例中配置两个,用于验证分片), 本例中,为每个集群(shard config)三个mongo实例 config与shard为同一个类型的进程mongod route则为

  • Nacos集群搭建过程详解

    目录 1.集群结构图 2.搭建集群 2.1.初始化数据库 2.2.下载nacos 2.3.配置Nacos 2.4.启动 2.5.nginx反向代理 2.6.优化 1.集群结构图 官方给出的Nacos集群图: 其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos.这里负载均衡器可以使用nginx. 我们计划的集群结构: 三个nacos节点的地址: 节点 ip port nacos1 192.168.150.1 8845 nacos2 192.168.150.1 8846 nacos3

  • SpringCloud eureka(server)微服务集群搭建过程

    目录 工作原理: eureka 高可用集群 项目创建: Maven 依赖 本地hosts文件修改 启动服务测试 工作原理: Spring Cloud框架下的服务发现Eureka包含两个组件 分别是: Eureka Server与Eureka ClientEureka Server,也称为服务注册中心.各个服务启动后,会在Eureka Server中进行注册,这样Eureka Server的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到.Eureka Client

  • 如何为MongoDB添加分片副本集

    背景是这样的:线上一个MongoDB集群保存了很多历史数据,这些历史数据是按照时间字段进行分片的,最近到了2021年,有些分片的截止时间要到了,为了能容纳更多的数据,需要在当前分片的基础上增加相应的分片. 线上环境中,每个分片本身也是一个3副本的副本集,所以添加的时候有些特定的流程需要注意,我再测试环境中简单测了一下这个过程,记录下来. 整个过程大概的流程是: 1.新建分片副本集 2.使用addShard命令将分片副本集添加到集群中 3.使用addShardTag命令为分片打标签 4.使用add

  • MySQL InnoDB ReplicaSet(副本集)简单介绍

    01 InnoDB ReplicaSet(副本集)介绍 在MySQL8.0引入了InnoDB ReplicaSet,它提供了我们熟悉的复制特性,如果有mongodb副本集的概念,理解InnoDB ReplicaSet会比较容易. InnoDB ReplicaSet使用了下面的技术: 1.MySQL Shell,一个功能更强大的客户端 2.MySQL Router,一个轻量级别的中间件,可以类比MongoDB中的mongos的角色: 3.MySQL Server,也就是MySQL服务 InnoDB

随机推荐