Mongodb的入门(8)mongodb4副本集

介绍:

  mongo4云19年2月16开发公布,至今已经半年,前段时间一直在用mongo3系列,4X系列新增很多新特性,下面我来简单介绍一下,先从副本集开始

副本集:

  主节点宕机时从节点会自动切换成主节点。 mongo4后不再提供主从复制机制

  搭建副本集步骤:

  第一步:安装mongo   参考:Mongodb的入门(7)window安装mongodb4

    cmd >  mongo

   

   默认安装成功了(mongo4的安装比3.x简单,我安装博客有部分图没截图,大家有需要的可以百度一下mongo4的安装)

  注意: 到这我们就安装成功了,但是我们不会使用默认的mongo,下面来搭建副本集的准备条件   

  第二步: 准备副本集文件夹 cluster 

      在该文件夹下 创建db1  db2  db3        db1下创建db和log文件夹来保存数据和日志   db2和db3 同理

   

  第三步,注册服务: 

  

 1 # 停止服务
 2 net stop mongodb41
 3 net stop mongodb42
 4 net stop mongodb43
 5
 6 # 删除服务
 7 sc delete mongodb41
 8 sc delete mongodb42
 9 sc delete mongodb43
10
11 # 注册服务
12     注意:--dbpath 指向v保存目录    --config  指向配置文件   暂时只是指向生成服务,授权后续会继续介绍
13  --dbpath 方式注册服务
14 mongod.exe --port 27041 --dbpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db1\data\db" --logpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db1\log\mongo.log" --install --serviceName "mongodb41"
15 mongod.exe --port 27042 --dbpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db2\data\db" --logpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db2\log\mongo.log" --install --serviceName "mongodb42"
16 mongod.exe --port 27043 --dbpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db3\data\db" --logpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db3\log\mongo.log" --install --serviceName "mongodb43"
17 --config 方式注册服务(不能在同一台机器上使用,服务名冲突)
18 mongod.exe --config "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db1\mongod.cfg" --install --serviceName "mongodb41" --serviceDisplayName mongodb41
19 mongod.exe --config "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db2\mongod.cfg" --install --serviceName "mongodb42" --serviceDisplayName mongodb42
20 mongod.exe --config "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db3\mongod.cfg" --install --serviceName "mongodb43" --serviceDisplayName mongodb43
21
22
23 # 启动服务
24 net start mongodb41
25 net start mongodb42
26 net start mongodb43
27
28
29 配置主从   (mongo4之后不再支持主从)
30
31 副本集:
32
33
34     mongod.exe --port 27041 --dbpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db1\data\db" --logpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db1\log\mongo.log" --replSet=huhy --install --serviceName "mongodb41"
35
36     mongod.exe --port 27042 --dbpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db2\data\db" --logpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db2\log\mongo.log" --replSet=huhy --install --serviceName "mongodb42"
37
38     mongod.exe --port 27043 --dbpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db3\data\db" --logpath "D:\newfiber\db\mongdb\MongoDB\Server\cluster\db3\log\mongo.log" --replSet=huhy --install --serviceName "mongodb43"    

   第四步:搭建副本集

   
1> 启动一个服务器实例,键入rs.initiate()初始化副本集;
2> 键入rs.conf()配置副本集;
3>rs.add()添加服务器进入副本集中。
rs.add(‘127.0.0.1:27041‘)
rs.add(‘127.0.0.1:27042‘)
rs.add(‘127.0.0.1:27043‘)
4> rs.status() 查看状态 rs.isMaster()是不是主节点
5> 重点: 副本集启动后从库是无法查询的,,我们可以通过 db.getMongo().setSlaveOk(); 修改一下,而后再查即可。
mongo3之前副本集搭建完成也是无法查询的,我们可以通过rs.slaveOk() 进行配置同步即可查询,上面是mongo4的配置


    mongo3.6的副本集请参考  Mongodb的入门(6)副本集

 

原文地址:https://www.cnblogs.com/huhongy/p/11405379.html

时间: 2024-10-09 20:15:13

Mongodb的入门(8)mongodb4副本集的相关文章

MongoDB(四)之副本集

参考链接:http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html 一.MongoDB副本集介绍 前面我们介绍了安装MongoDB及其相关的使用,但是其会存在下面的问题: 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的时候能否做到自动扩展? 这篇文章看完这些问题就可以搞定了.NoSQL的产生就是为了解决大数据量.高

MongoDB高可用方案之副本集(Replica Set)

一.介绍 Replicat Set比起传统的Master - Slave结构而言,应用场景更加多,也有了自动failover的能力 二.副本集结构图(参考:https://www.linuxidc.com/Linux/2017-03/142379.htm) 类似于"MySQL中1主2从+mha_manager"的结构. Replication通过Oplog实现语句复现 三.副本集成员的属性 Replication通过Oplog实现语句复现分别为Primary.Secondary(Sec

MongoDB 2.3复制(副本集)

2.3.复制(副本集) 什么是复制 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性,并可以保证数据的安全性 复制还允许从硬件故障和服务中断中恢复数据 为什么要复制 数据备份 数据灾难恢复 读写分离 高(24* 7)数据可用性 无宕机维护 副本集对应用程序是透明 复制的工作原理 复制至少需要两个节点A.B... A是主节点,负责处理客户端请求 其余的都是从节点,负责复制主节点上的数据 节点常见的搭配方式为:一主一从.一主多从 主节点记录在其上的所有操作,从节点定期轮询主

MongoDB副本集

简介 mongodb复制(replication)是将数据同步在多个服务器的过程.主节点记录在其上的所有操作oplog,从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致.复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性,并保证数据的安全性.复制还允许您从硬件故障和服务中断中恢复数据. 而副本集(replica set)是从mongodb 1.6 提供的新功能,比复制功能要强大一些并增加了故障自动切换和自动修复成员节点,

MongoDB 高可用集群副本集+分片搭建

MongoDB 高可用集群搭建 一.架构概况 192.168.150.129192.168.150.130192.168.150.131 参考文档:https://www.cnblogs.com/vadim/p/7100683.html mongos mongos    mongos Config   server      Config server  Config serverShared1 server 1 Shared1 server 1 副本 Shared1 server 1 仲裁/隐

MongoDB shell 2 副本集方法

rs.initiate()   rs.addArb()   rs.help()   rs.printReplicationInfo() 查看到副本集操作日志 rs.remove() 减少副本集节点 rs.freeze() “冻结”mongodb实例 rs.status() 查看副本集状态 db.printSlaveReplicationInfo 查看复制集的同步状态 rs.add() 增加副本集节点 rs.stepDown() 将当前主库“降级” rs.slaveOk()   rs.conf()

Mongodb的入门(6)副本集

Mongodb的副本集:(有两种情况,主从复制,副本集) 这次我来说一下mongodb的副本集,副本集的出现可以有效的保证mongodb的单点问题,对数据的稳健性有一定辅助作用: MongoDB复制:是将数据同步在多个服务器的过程. 1.复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性. 2.复制还允许您从硬件故障和服务中断中恢复数据. 什么是复制? 保障数据的安全性 数据高可用性 (24*7) 灾难恢复 无需停机维护(如备份,重建索引,压缩)

MongoDB健壮集群——用副本集做分片

1.    MongoDB分片+副本集 健壮的集群方案 多个配置服务器 多个mongos服务器  每个片都是副本集 正确设置w 架构图 说明: 1.   此实验环境在一台机器上通过不同port和dbpath实现启动不同的mongod实例 2.   总的9个mongod实例,分别做成shard1.shard2.shard3三组副本集,每组1主2从 3.   Mongos进程的数量不限,建议把mongos配置在每个应用服务器本机上,这样每个应用服务器就与自身的mongos进行通信,如果服务器不工作了

Mongodb4.0副本集构建

目前最新的mongodb4.0.2已经支持事务这个重要特性,需要使用的话必须是复制或副本集,这是第一篇先研发如何构建副本集,因为副本集是目前最低成本的高可用群集方式. 1.准备三台服务器,本次使用是的ubuntu16.04.分别在三台服务器执行如下安装指定,参考官方安装连接:https://docs.mongodb.com/master/tutorial/install-mongodb-on-ubuntu/?_ga=2.66639470.1117419885.1536141422-1139377