1.创建目录

  1. mkdir -p /mongodb/data/r1
  2. mkdir -p /mongodb/data/r2
  3. mkdir -p /mongodb/data/r3
  4. mkdir -p /mongodb/mlog

2.启动三个实例,并声明实例属于复制集

  1. ./mongod --dbpath /mongodb/data/r1 --logpath /mongodb/mlog/r1.log --fork --port 27017 --replSet ybb --smallfiles
  2. ./mongod --dbpath /mongodb/data/r2 --logpath /mongodb/mlog/r2.log --fork --port 27018 --replSet ybb --smallfiles
  3. ./mongod --dbpath /mongodb/data/r3 --logpath /mongodb/mlog/r3.log --fork --port 27019 --replSet ybb --smallfiles

3.复制集初始化
这一步初始化的复制集只是包含当前节点

  1. # ./mongo --port=27017
  2. > rs.initiate()
  3. {
  4. "info2" : "no configuration specified. Using a default configuration for the set",
  5. "me" : "cc.example.com:27017",
  6. "ok" : 1
  7. }

4.验证复制集初始化配置

这一步初始化的复制集只是包含当前节点

  1. ybb:OTHER> rs.conf()
  2. {
  3. "_id" : "ybb",
  4. "version" : 1,
  5. "protocolVersion" : NumberLong(1),
  6. "members" : [
  7. {
  8. "_id" : 0,
  9. "host" : "cc.example.com:27017",
  10. "arbiterOnly" : false,
  11. "buildIndexes" : true,
  12. "hidden" : false,
  13. "priority" : 1,
  14. "tags" : {
  15.  
  16. },
  17. "slaveDelay" : NumberLong(0),
  18. "votes" : 1
  19. }
  20. ],
  21. "settings" : {
  22. "chainingAllowed" : true,
  23. "heartbeatIntervalMillis" : 2000,
  24. "heartbeatTimeoutSecs" : 10,
  25. "electionTimeoutMillis" : 10000,
  26. "getLastErrorModes" : {
  27.  
  28. },
  29. "getLastErrorDefaults" : {
  30. "w" : 1,
  31. "wtimeout" : 0
  32. }
  33. }
  34. }
  35. ybb:PRIMARY>

5.添加其它节点

  1. ybb:PRIMARY> rs.add("cc.example.com:27018")rs.add("cc.example.com:27018")
  2. { "ok" : 1 }
  3. ybb:PRIMARY> rs.add("cc.example.com:27019")rs.add("cc.example.com:27019")
  4. { "ok" : 1 }
  5. ybb:PRIMARY>

6.检查复制集的状态

  1. ybb:PRIMARY> rs.status()rs.status()
  2. {
  3. "set" : "ybb",
  4. "date" : ISODate("2016-03-15T05:26:06.682Z"),
  5. "myState" : 1,
  6. "term" : NumberLong(1),
  7. "heartbeatIntervalMillis" : NumberLong(2000),
  8. "members" : [
  9. {
  10. "_id" : 0,
  11. "name" : "cc.example.com:27017",
  12. "health" : 1,
  13. "state" : 1,
  14. "stateStr" : "PRIMARY",
  15. "uptime" : 482,
  16. "optime" : {
  17. "ts" : Timestamp(1458019522, 1),
  18. "t" : NumberLong(1)
  19. },
  20. "optimeDate" : ISODate("2016-03-15T05:25:22Z"),
  21. "electionTime" : Timestamp(1458019202, 2),
  22. "electionDate" : ISODate("2016-03-15T05:20:02Z"),
  23. "configVersion" : 3,
  24. "self" : true
  25. },
  26. {
  27. "_id" : 1,
  28. "name" : "cc.example.com:27018",
  29. "health" : 1,
  30. "state" : 2,
  31. "stateStr" : "SECONDARY",
  32. "uptime" : 47,
  33. "optime" : {
  34. "ts" : Timestamp(1458019522, 1),
  35. "t" : NumberLong(1)
  36. },
  37. "optimeDate" : ISODate("2016-03-15T05:25:22Z"),
  38. "lastHeartbeat" : ISODate("2016-03-15T05:26:04.822Z"),
  39. "lastHeartbeatRecv" : ISODate("2016-03-15T05:26:05.826Z"),
  40. "pingMs" : NumberLong(0),
  41. "syncingTo" : "cc.example.com:27017",
  42. "configVersion" : 3
  43. },
  44. {
  45. "_id" : 2,
  46. "name" : "cc.example.com:27019",
  47. "health" : 1,
  48. "state" : 2,
  49. "stateStr" : "SECONDARY",
  50. "uptime" : 43,
  51. "optime" : {
  52. "ts" : Timestamp(1458019522, 1),
  53. "t" : NumberLong(1)
  54. },
  55. "optimeDate" : ISODate("2016-03-15T05:25:22Z"),
  56. "lastHeartbeat" : ISODate("2016-03-15T05:26:04.822Z"),
  57. "lastHeartbeatRecv" : ISODate("2016-03-15T05:26:04.821Z"),
  58. "pingMs" : NumberLong(0),
  59. "configVersion" : 3
  60. }
  61. ],
  62. "ok" : 1
  63. }
  64. ybb:PRIMARY>

7.查看复制集的最新配置

  1. ybb:PRIMARY> rs.config();rs.config();
  2. {
  3. "_id" : "ybb",
  4. "version" : 3,
  5. "protocolVersion" : NumberLong(1),
  6. "members" : [
  7. {
  8. "_id" : 0,
  9. "host" : "cc.example.com:27017",
  10. "arbiterOnly" : false,
  11. "buildIndexes" : true,
  12. "hidden" : false,
  13. "priority" : 1,
  14. "tags" : {
  15.  
  16. },
  17. "slaveDelay" : NumberLong(0),
  18. "votes" : 1
  19. },
  20. {
  21. "_id" : 1,
  22. "host" : "cc.example.com:27018",
  23. "arbiterOnly" : false,
  24. "buildIndexes" : true,
  25. "hidden" : false,
  26. "priority" : 1,
  27. "tags" : {
  28.  
  29. },
  30. "slaveDelay" : NumberLong(0),
  31. "votes" : 1
  32. },
  33. {
  34. "_id" : 2,
  35. "host" : "cc.example.com:27019",
  36. "arbiterOnly" : false,
  37. "buildIndexes" : true,
  38. "hidden" : false,
  39. "priority" : 1,
  40. "tags" : {
  41.  
  42. },
  43. "slaveDelay" : NumberLong(0),
  44. "votes" : 1
  45. }
  46. ],
  47. "settings" : {
  48. "chainingAllowed" : true,
  49. "heartbeatIntervalMillis" : 2000,
  50. "heartbeatTimeoutSecs" : 10,
  51. "electionTimeoutMillis" : 10000,
  52. "getLastErrorModes" : {
  53.  
  54. },
  55. "getLastErrorDefaults" : {
  56. "w" : 1,
  57. "wtimeout" : 0
  58. }
  59. }
  60. }
  61. ybb:PRIMARY>

mongodb - Replication Set搭建过程的更多相关文章

  1. mongodb副本集搭建过程中的问题和解决技巧

    在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天 ...

  2. mongodb集群搭建过程记录

    mongodb集群搭建花费比较长的时间,在此记录下过程,方便以后使用 一 软件环境 系统:ubuntu 18.04,mongodb 社区版4.2 https://docs.mongodb.com/ma ...

  3. Mongodb集群搭建过程及常见错误

    Replica Sets MongoDB 支持在多个机器中通过异步复制达到故障转移和实现冗余.多机器中同一时刻只 有一台是用于写操作.正是由于这个情况,为 MongoDB 提供了数据一致性的保障.担当 ...

  4. MongoDB Sharding(二) -- 搭建分片集群

    在上一篇文章中,我们基本了解了分片的概念,本文将着手实践,进行分片集群的搭建 首先我们再来了解一下分片集群的架构,分片集群由三部分构成: mongos:查询路由,在客户端程序和分片之间提供接口.本次实 ...

  5. MongoDB副本集搭建及备份恢复

    一.MongoDB副本集(repl set)介绍 早起版本使用master-slave,一主一从和MySQL类似,但slave在此架构中为只读,当主库宕机后,从库不能自动切换为主: 目前已经淘汰了ma ...

  6. 懒人记录 Hadoop2.7.1 集群搭建过程

    懒人记录 Hadoop2.7.1 集群搭建过程 2016-07-02 13:15:45 总结 除了配置hosts ,和免密码互连之外,先在一台机器上装好所有东西 配置好之后,拷贝虚拟机,配置hosts ...

  7. Node+Express+MongoDB + Socket.io搭建实时聊天应用

    Node+Express+MongoDB + Socket.io搭建实时聊天应用 前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战 ...

  8. MongoDB + Express 环境搭建记

    最近项目需要使用 MongoDB,所以不得不搭建 MongoDB 环境,此文记录搭建过程及使用过程中需要了解的问题. Linux + Windows 混合搭建调试 MongoDB 记录 版本介绍 : ...

  9. Node+Express+MongoDB + Socket.io搭建实时聊天应用实战教程(二)--node解析与环境搭建

    前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战.写教程一方面在自己写的过程中需要考虑更多的东西,另一方面希望能对node入门者有 ...

随机推荐

  1. 通过scrapy内置的ImagePipeline下载图片到本地、并提取本地保存地址

    1.通过scrapy内置的ImagePipeline下载图片到本地 2.获取图片保存本地的地址 1.通过scrapy内置的ImagePipeline下载图片到本地 1)在settings.py中打开  ...

  2. IOS集成到支付宝的步骤及问题

    一,在支付宝开放平台下载支付宝SDK(https://openhome.alipay.com/platform/document.htm#down) 二,添加sdk文件到xcode 1,新建一个ali ...

  3. Android疑难杂症之KillProcess 和System.exit 无效

    以下所讲,浓缩在 https://github.com/wytings/CrashDemo 首先就这个名字来说,kill了process 或者 system.exit确实已经把APP杀掉了,特别是当你 ...

  4. linux安装ping

    https://www.cnblogs.com/iamdevops/p/5743157.html 使用docker仓库下载的ubuntu 14.04 镜像.里面精简的连 ping 命令都没有.goog ...

  5. RMAN冗余备份概念与方法

    冗余备份概念 RMAN提供了一种更谨慎的备份策略:duplexed方式备份,其实质就是在生成备份集的同时,向指定位置copy指定份数(最大不超过4)的备份集复制,以避免在灾难性事故时数据库损坏和备份丢 ...

  6. web.config及<customErrors>节点之说明

    Web.config文件是一个XML文本文件,它用来储存ASP.NETWeb 应用程序的配置信息(如最常用的设置ASP.NETWeb 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中.当你 ...

  7. vs2017 自定义生成规则 错误 MSB3721 命令 ”已退出,返回代码为 1。

    错误 MSB3721 命令 ”已退出,返回代码为 1. 解决办法:去掉yasm复选框,改为masm vs2017 自定义生成规则-编译汇编代码 VC++调用yasm编译汇编代码有三种方法:Custom ...

  8. 快速把web项目部署到weblogic上

    转自:http://weijie.blog.51cto.com/340746/90420/ weblogic简介         BEA WebLogic是用于开发.集成.部署和管理大型分布式Web应 ...

  9. MyEclipse8.0 注册码生成代码

    转自:http://blog.sina.com.cn/s/blog_7ad29e00010199xt.html package com.guaicaicc.register; import java. ...

  10. Textarea自动适用高度且无滚动条解决方案

    今日的系统需要动态显示一项数据库里面的内容,该内容包含换行等格式字符,要求如实的反应在页面上. 最初解决办法是使用textarea控件,代码如下: <textarea style="b ...