mongodb - Replication Set搭建过程
1.创建目录
mkdir -p /mongodb/data/r1
mkdir -p /mongodb/data/r2
mkdir -p /mongodb/data/r3
mkdir -p /mongodb/mlog
2.启动三个实例,并声明实例属于复制集
./mongod --dbpath /mongodb/data/r1 --logpath /mongodb/mlog/r1.log --fork --port 27017 --replSet ybb --smallfiles
./mongod --dbpath /mongodb/data/r2 --logpath /mongodb/mlog/r2.log --fork --port 27018 --replSet ybb --smallfiles
./mongod --dbpath /mongodb/data/r3 --logpath /mongodb/mlog/r3.log --fork --port 27019 --replSet ybb --smallfiles
3.复制集初始化
这一步初始化的复制集只是包含当前节点
# ./mongo --port=27017
> rs.initiate()
{
"info2" : "no configuration specified. Using a default configuration for the set",
"me" : "cc.example.com:27017",
"ok" : 1
}
4.验证复制集初始化配置
这一步初始化的复制集只是包含当前节点
ybb:OTHER> rs.conf()
{
"_id" : "ybb",
"version" : 1,
"protocolVersion" : NumberLong(1),
"members" : [
{
"_id" : 0,
"host" : "cc.example.com:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : { },
"slaveDelay" : NumberLong(0),
"votes" : 1
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"getLastErrorModes" : { },
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
}
}
}
ybb:PRIMARY>
5.添加其它节点
ybb:PRIMARY> rs.add("cc.example.com:27018")rs.add("cc.example.com:27018")
{ "ok" : 1 }
ybb:PRIMARY> rs.add("cc.example.com:27019")rs.add("cc.example.com:27019")
{ "ok" : 1 }
ybb:PRIMARY>
6.检查复制集的状态
ybb:PRIMARY> rs.status()rs.status()
{
"set" : "ybb",
"date" : ISODate("2016-03-15T05:26:06.682Z"),
"myState" : 1,
"term" : NumberLong(1),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "cc.example.com:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 482,
"optime" : {
"ts" : Timestamp(1458019522, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2016-03-15T05:25:22Z"),
"electionTime" : Timestamp(1458019202, 2),
"electionDate" : ISODate("2016-03-15T05:20:02Z"),
"configVersion" : 3,
"self" : true
},
{
"_id" : 1,
"name" : "cc.example.com:27018",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 47,
"optime" : {
"ts" : Timestamp(1458019522, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2016-03-15T05:25:22Z"),
"lastHeartbeat" : ISODate("2016-03-15T05:26:04.822Z"),
"lastHeartbeatRecv" : ISODate("2016-03-15T05:26:05.826Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "cc.example.com:27017",
"configVersion" : 3
},
{
"_id" : 2,
"name" : "cc.example.com:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 43,
"optime" : {
"ts" : Timestamp(1458019522, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2016-03-15T05:25:22Z"),
"lastHeartbeat" : ISODate("2016-03-15T05:26:04.822Z"),
"lastHeartbeatRecv" : ISODate("2016-03-15T05:26:04.821Z"),
"pingMs" : NumberLong(0),
"configVersion" : 3
}
],
"ok" : 1
}
ybb:PRIMARY>
7.查看复制集的最新配置
ybb:PRIMARY> rs.config();rs.config();
{
"_id" : "ybb",
"version" : 3,
"protocolVersion" : NumberLong(1),
"members" : [
{
"_id" : 0,
"host" : "cc.example.com:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : { },
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 1,
"host" : "cc.example.com:27018",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : { },
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 2,
"host" : "cc.example.com:27019",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : { },
"slaveDelay" : NumberLong(0),
"votes" : 1
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"getLastErrorModes" : { },
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
}
}
}
ybb:PRIMARY>
mongodb - Replication Set搭建过程的更多相关文章
- mongodb副本集搭建过程中的问题和解决技巧
在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天 ...
- mongodb集群搭建过程记录
mongodb集群搭建花费比较长的时间,在此记录下过程,方便以后使用 一 软件环境 系统:ubuntu 18.04,mongodb 社区版4.2 https://docs.mongodb.com/ma ...
- Mongodb集群搭建过程及常见错误
Replica Sets MongoDB 支持在多个机器中通过异步复制达到故障转移和实现冗余.多机器中同一时刻只 有一台是用于写操作.正是由于这个情况,为 MongoDB 提供了数据一致性的保障.担当 ...
- MongoDB Sharding(二) -- 搭建分片集群
在上一篇文章中,我们基本了解了分片的概念,本文将着手实践,进行分片集群的搭建 首先我们再来了解一下分片集群的架构,分片集群由三部分构成: mongos:查询路由,在客户端程序和分片之间提供接口.本次实 ...
- MongoDB副本集搭建及备份恢复
一.MongoDB副本集(repl set)介绍 早起版本使用master-slave,一主一从和MySQL类似,但slave在此架构中为只读,当主库宕机后,从库不能自动切换为主: 目前已经淘汰了ma ...
- 懒人记录 Hadoop2.7.1 集群搭建过程
懒人记录 Hadoop2.7.1 集群搭建过程 2016-07-02 13:15:45 总结 除了配置hosts ,和免密码互连之外,先在一台机器上装好所有东西 配置好之后,拷贝虚拟机,配置hosts ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用
Node+Express+MongoDB + Socket.io搭建实时聊天应用 前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战 ...
- MongoDB + Express 环境搭建记
最近项目需要使用 MongoDB,所以不得不搭建 MongoDB 环境,此文记录搭建过程及使用过程中需要了解的问题. Linux + Windows 混合搭建调试 MongoDB 记录 版本介绍 : ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用实战教程(二)--node解析与环境搭建
前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战.写教程一方面在自己写的过程中需要考虑更多的东西,另一方面希望能对node入门者有 ...
随机推荐
- bzoj 1433: [ZJOI2009]假期的宿舍
1433: [ZJOI2009]假期的宿舍 Description Input Output Sample Input 1 3 1 1 0 0 1 0 0 1 1 1 0 0 1 0 0 Sample ...
- Java并发(六):volatile的实现原理
synchronized是一个重量级的锁,volatile通常被比喻成轻量级的synchronized volatile是一个变量修饰符,只能用来修饰变量. volatile写:当写一个volatil ...
- JVM 参数配置及详解 -Xms -Xmx -Xmn -Xss 调优总结
堆大小设置 JVM 中最大堆大小有三方面限制: ①.相关操作系统的数据模型(32-bt还是64-bit)限制; ②.系统的可用虚拟内存限制; ③.系统的可用物理内存限制. 32位系统 下,一般限制在1 ...
- 如何获取php错误
今天把项目放在测试服务器,但是出现一个问题,用的TP5框架,我把入口文件放在了根目录,访问的时候报错了,框架引导文件引入不了,也不报错,就是说访问不了. 所以就用了一段代码把错误获取出来了,代码如下: ...
- Linux中的黑洞(black hole)-/dev/null
http://blog.csdn.net/loongshawn/article/details/50514018
- 在代码中加载storyBoard中的ViewController
首先, 要在storyBoard中画出想要的VC, 然后建一个VC类和他关联.如图 : 调用时找如下写: DetailViewController *detailVC = [[UIStoryboard ...
- LATEX中优化问题如何排列Max——s.t.格式
做优化的同学可能会碰到排列形如 max ******* s.t. ***** = * ***** > *** ... 的格式 既要要求 max 和 s ...
- Spark学习视频整合
1.<Scala深入浅出实战经典>http://pan.baidu.com/s/1pJnAUr5 2.<Spark纯实战公益大讲坛>http://pan.baidu.com/s ...
- java 获取进程的processId
package us.mine.demo.jvm.util; import java.lang.management.ManagementFactory; import java.lang.manag ...
- DataGridView绑定泛型List时,利用BindingList来实现增删查改
DataGridView绑定泛型List时,利用BindingList来实现增删查改 一. DataGridView绑定泛型List的种种 1.DataGridView数据绑定对比(DataTa ...