一、环境准备
1、Centos7
2、mongodb3.4.10
3、三台机器IP分别是:192.168.1.100、192.168.1.135、192.168.1.136

二、mongdb数据库的安装
1、分别在三台机器进行mongdb的安装,具体参考前面教程mongodb安装及配置

2、分别在三台机器上启动mongodb,具体命令如下

[root@localhost mongodb]# ./bin/mongod -f  mongodb-config/server.conf --replSet mongoTestFuBen

其中–replSet表示副本集群参数 ,mongoTestFuBen是副本集名称,这里的名字可以任意取,另外两台机也要和这个一样

或者在配置文件添加 replSet=xxx 选项。 xxx是副本集的一个名字。然后直接启动: ./bin/mongod -f  mongodb-config/server.conf

如果启动成功会看到类似下面的提示

about to fork child process, waiting until server is ready for connections.
forked process: 3805
child process started successfully, parent exiting

三、配置mongodb副本集
首先要做的就是,对mongodb副本集进行初始化 ,只需在任意一台服务器进行一次副本集初始化操作。
1、连接任意一台,比如ip为100的,进入mongo shell操作

可以直接用bin目录的mongo命令,如/bin/mongo -port 27017

也可以用远程客户端,我在远程电脑安装了mongodb的客户端,并且配置了环境变量,操作更方便,所以就用远程电脑的cmd窗口连接100的mongodb服务器

C:\Users\zxp>mongo 192.168.220.100:27017
MongoDB shell version v3.4.9
connecting to: 192.168.220.100:27017
MongoDB server version: 3.4.10


2、进入admin库
use admin

3、mongo副本配置

先直接输入或事先编辑好后拷贝以下配置内容

config={_id:"mongoTestFuBen",members:[{_id:1,host:"192.168.220.100:27017"},{_id:2,host:"192.168.220.135:27017"},{_id:3,host:"192.168.220.136:27017"}]}

再执行下面的命令

rs.initiate(config)

显示{ "ok" : 1 },代表初始化成功

这样就可以使用副本集群了。

最后再补充几个命令

  1. rs.add("ip:port") => 添加一个节点 ,前提是这个ip:port必须是使用了同一个relpSet名称的mongodb实例即可

  2. rs.remove("ip:port") => 删除成员

  3. rs.config() => 查看副本集配置

  4. rs.reconfig(config) => 根据config配置对象,重新配置副本集

  5. rs.isMaster() 查看主节点信息等
  6. rs.status() 查看状态等详细信息

参考:Centos 7 中MongoDB3.4.2 集群搭建

MongoDB副本集相关命令

MongoDB集群的搭建的更多相关文章

  1. 搭建高可用mongodb集群(四)—— 分片(经典)

    转自:http://www.lanceyan.com/tech/arch/mongodb_shard1.html 按照上一节中<搭建高可用mongodb集群(三)-- 深入副本集>搭建后还 ...

  2. [转]搭建高可用mongodb集群(四)—— 分片

    按照上一节中<搭建高可用mongodb集群(三)—— 深入副本集>搭建后还有两个问题没有解决: 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的 ...

  3. [转]搭建高可用mongodb集群(二)—— 副本集

    在上一篇文章<搭建高可用MongoDB集群(一)——配置MongoDB> 提到了几个问题还没有解决. 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点 ...

  4. 搭建高可用mongodb集群(四)—— 分片

    按照上一节中<搭建高可用mongodb集群(三)—— 深入副本集>搭建后还有两个问题没有解决: 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的 ...

  5. 搭建高可用mongodb集群(三)—— 深入副本集内部机制

    在上一篇文章<搭建高可用mongodb集群(二)—— 副本集> 介绍了副本集的配置,这篇文章深入研究一下副本集的内部机制.还是带着副本集的问题来看吧! 副本集故障转移,主节点是如何选举的? ...

  6. 搭建高可用mongodb集群(二)—— 副本集

    在上一篇文章<搭建高可用MongoDB集群(一)——配置MongoDB> 提到了几个问题还没有解决. 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点 ...

  7. 搭建高可用mongodb集群(一)——配置mongodb

    在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. NOSQL有这些优势: 大数据量,可以通过 ...

  8. MongoDB集群架构及搭建

    MongoDB分布式集群 MongDB分布式集群能够对数据进行备份,提高数据安全性,以及提高集群提高读写服务的能力和数据存储能力.主要通过副本集(replica)对数据进行备份,通过分片(shardi ...

  9. 搭建高可用mongodb集群(四)—— 分片

    按照上一节中<搭建高可用mongodb集群(三)-- 深入副本集>搭建后还有两个问题没有解决: 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的 ...

随机推荐

  1. C# .NET 实体类转Dictionary

    -- System.Reflection.PropertyInfo[] cfgItemProperties = cfgItem.GetType().GetProperties(System.Refle ...

  2. <ROS> NodeHandle句柄

    作者:jack_20 原文:https://blog.csdn.net/jack_20/article/details/70746736 1.句柄可以让你通过构造函数指定命名空间 ros::NodeH ...

  3. ES - 处理TooManyClause异常

    1.TooManyClause 我们在使用terms query.prefix query.fuzzy query.wildcard query.range query的时候,一不小心就会遇到TooM ...

  4. HTML 理解标签 - meta

    meta标签 , 常用的有以下几个属性: 1. name : 比较常见的一些属性 author: 就是这个文档的作者名称,可以用自由的格式去定义 description: 包括一个关于页面内容的缩略而 ...

  5. [UE4]模拟物理

    一.默认情况下Actor的Mobility(可移动性)是Static(静止),Simulate Physics(模拟物理):如果勾选Simulate Physics,则Mobility会自动变成Mov ...

  6. CentOS7的内核优化

    修改内核配置文件 vim /etc/sysctl.conf 刷新配置文件 sysctl -p 关ipv6 net.ipv6.conf.all.disable_ipv6 = net.ipv6.conf. ...

  7. Microsoft Speaker Recognition API

    azure说话人识别API 官方文档:https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508 ...

  8. SQL JOIN 中 on 与 where 的区别

    left join : 左连接,返回左表中所有的记录以及右表中连接字段相等的记录. right join : 右连接,返回右表中所有的记录以及左表中连接字段相等的记录. inner join : 内连 ...

  9. Angular CLI: 全局脚本

    全局脚本 有的时候,我们需要加载全局脚本,例如 jQuery 脚本库,第三方的控件库等等.比如 jQuery 可以直接加载到 window 对象上,这就需要我们使用 Angular 中的全局脚本来处理 ...

  10. jmeter联合selenium webdriver进行自动化测试-简单1

    jmeter进行webdriver测试 背景:jmeter可以联合selenium进行基本的UI自动化进行测试,解放了手工测试的压力.那么selenium webdriver完成GUI的流程初步如下 ...