1.建立MongoDB副本集

现利用一台机器完成MongoDB副本集的建立

机器1:127.0.0.1:27017

机器2:127.0.0.1:27018

机器3:127.0.0.1:27019

在D盘建立以下目录

在各自目录的主目录中创建文件夹db(用来存储数据库文件),log(存储日志文件),配置文件mongo.txt,内容如下

dbpath=D:\Mongo\Mongo27017\3.2\db
logpath=D:\Mongo\Mongo27017\3.2\log\log.txt
port=27017
serviceName=Mongo27017
serviceDisplayName=Mongo27017
replSet=TestSet
dbpath=D:\Mongo\Mongo27018\3.2\db
logpath=D:\Mongo\Mongo27018\3.2\log\log.txt
port=27018
serviceName=Mongo27018
serviceDisplayName=Mongo27018
replSet=TestSet
dbpath=D:\Mongo\Mongo27019\3.2\db
logpath=D:\Mongo\Mongo27019\3.2\log\log.txt
port=27019
serviceName=Mongo27019
serviceDisplayName=Mongo27019
replSet=TestSet

分别执行以下命令

mongod --config D:\Mongo\Mongo27017\3.2\mongo.txt --install

net start  Mongo27017

mongod --config D:\Mongo\Mongo27018\3.2\mongo.txt --install

net start  Mongo27018 

mongod --config D:\Mongo\Mongo27019\3.2\mongo.txt --install

net start  Mongo27019

输入以下命令

config = { _id:"TestSet", members:[
... {_id:0,host:"127.0.0.1:27017"},
... {_id:1,host:"127.0.0.1:27018"},
... {_id:2,host:"127.0.0.1:27019"}]
... }

rs.initiate(config)

rs.config()

这样,副本集就建立起来了

 2.副本集读写数据

在主数据库中执行以下命令:

db.person.insert({"name":"一呆","Age":20})

插入一条记录

默认情况下副本也是不能读数据的,如果需要副本读数据,需要在副本中执行以下命令

rs.slaveOk()

3.副本集维护

查看副本集状态:

rs.status()

rs.config()

移除指定的副本

rs.remove("127.0.0.1:27018") ,移除命令只能在主库中执行

停止服务Mongo27017后在27018副本执行以下命令:rs.status(),发现主库已经被自动切换为27018了,这是自动完成的

重新启动服务Mongo27017,执行命令rs.status()

MongoDB副本集的实现与维护实战的更多相关文章

  1. MongoDB 副本集的原理、搭建、应用

    概念: 在了解了这篇文章之后,可以进行该篇文章的说明和测试.MongoDB 副本集(Replica Set)是有自动故障恢复功能的主从集群,有一个Primary节点和一个或多个Secondary节点组 ...

  2. MongoDB副本集的常用操作及原理

    本文是对MongoDB副本集常用操作的一个汇总,同时也穿插着介绍了操作背后的原理及注意点. 结合之前的文章:MongoDB副本集的搭建,大家可以在较短的时间内熟悉MongoDB的搭建和管理. 下面的操 ...

  3. MongoDB副本集的搭建

    副本集是mongodb提供的一种高可用解决方案.相对于原来的主从复制,副本集能自动感知primary节点的下线,并提升其中一个Secondary作为Primary. 整个过程对业务透明,同时也大大降低 ...

  4. 在centos7上搭建mongodb副本集

    1.安装副本集介绍 副本集(Replica Set)是一组MongoDB实例组成的集群,由一个主(Primary)服务器和多个备份(Secondary)服务器构成.通过Replication,将数据的 ...

  5. MongoDB 副本集的常用操作及原理

    本文是对MongoDB副本集常用操作的一个汇总,同时也穿插着介绍了操作背后的原理及注意点. 结合之前的文章:MongoDB副本集的搭建,大家可以在较短的时间内熟悉MongoDB的搭建和管理. 下面的操 ...

  6. mongodb副本集的内部机制(借鉴lanceyan.com)

    针对mongodb的内部机制提出以下几个引导性的问题: 副本集故障转移,主节点是如何选举的?能否手动干涉下架某一台主节点. 官方说副本集数量最好是奇数,为什么? mongodb副本集是如何同步的?如果 ...

  7. (2)MongoDB副本集自动故障转移原理

    前文我们搭建MongoDB三成员副本集,了解集群基本特性,今天我们围绕下图聊一聊背后的细节. 默认搭建的replica set均在主节点读写,辅助节点冗余部署,形成高可用和备份, 具备自动故障转移的能 ...

  8. (2)MongoDB副本集自动故障转移全流程原理

    前文我们搭建MongoDB三成员副本集,了解集群基本特性,今天我们围绕下图聊一聊背后的细节. 默认搭建的replica set均在主节点读写,辅助节点冗余部署,形成高可用和备份, 具备自动故障转移的能 ...

  9. MongoDB副本集学习(三):性能和优化相关

    Read Preferences/读写分离 有时候为了考虑应用程序的性能或响应性,为了提高读取操作的吞吐率,一个常见的措施就是进行读写分离,MongoDB副本集对读写分离的支持是通过Read Pref ...

随机推荐

  1. 防止SQL注入的方法

    方法1⃣️addslashes(); $username=addslashes($_POST['username']); 方法2⃣️mysql_escape_string(); 方法3⃣️开启魔术引号 ...

  2. unreal 自定义 Slate Style Sets

    搜集到的最有价值的一篇教学,按照作者的方法尝试中遇到了一些问题.[感谢这位作者!] 网址:https://wiki.unrealengine.com/Slate_Style_Sets_Part_2 在 ...

  3. 如何正确使用$_SERVER['DOCUMENT_ROOT']识别该路径的文件

    echo $_SERVER['DOCUMENT_ROOT']; 这时输出当前文件所在的路径 D:/phpStudy/WWW/study/php&mysql $_SERVER['DOCUMENT ...

  4. 易货beta版本项目展示报告

    一.团队成员和个人博客地址 PM:刘猛 开发人员:胡亚坤,董元财 测试人员:马汉虎,赖彦谕 团队名:bestRW 团队博客地址:http://www.cnblogs.com/niceRW/ 董元财:h ...

  5. 2014 ACM/ICPC Asia Regional Xi'an Online

    03 hdu5009 状态转移方程很好想,dp[i] = min(dp[j]+o[j~i]^2,dp[i]) ,o[j~i]表示从j到i颜色的种数. 普通的O(n*n)是会超时的,可以想到o[]最大为 ...

  6. PHPStorm技巧篇 -- 观感优化

    (1)设置默认显示行号 (2)设置自动换行 (3)去除代码下划线(拼写检测) 优化说明:自动换行和显示行号字面意思很好理解,下划线说明一下,phpstorm默认对代码进行拼写校验,即对于不符合英文单词 ...

  7. 上传文件创建目录 mkdir

    mkdir($save_path,0777,true); $save_path  :文件名 0777:权限 .windows 下面可以忽略 当创建多级文件目录的时候一定要加上 true

  8. 转:Eclipse快捷键 10个最有用的快捷键

    Eclipse快捷键 10个最有用的快捷键 Eclipse中10个最有用的快捷键组合  一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代 ...

  9. PHP 底层的运行机制与原理

    PHP说简单,但是要精通也不是一件简单的事.我们除了会使用之外,还得知道它底层的工作原理. PHP是一种适用于web开发的动态语言.具体点说,就是一个用C语言实现包含大量组件的软件框架.更狭义点看,可 ...

  10. ttf文件属性详细信息

    python实现ttf文件属性详细信息 import sys from fontTools import ttLib def shortName( font ): name = "" ...