replicattion 相当于 mysql 的主从复制的读写分离,共同维护相同的数据,提高服务器的可用性【假如主(PRIMARY)不能用时,mongo会迅速自动切到从(SECONDARY)服务器上】
      1、pkill -9 moongo                                 //先杀死之前的进程
      2、 mongodb目录下:mkdir /home/m17 /home/m18 /home/m19
      3、开启
           ./bin/mongodb --dapath /home/m17 --logpath /home/mlog/m17.log --fork --port 27017 --replSet re2 --smallfiles  
           ./bin/mongodb --dapath /home/m18 --logpath /home/mlog/m18.log --fork --port 27018 --replSet re2 --smallfiles
           ./bin/mongodb --dapath /home/m19 --logpath /home/mlog/m19.log --fork --port 27019 --replSet re2 --smallfiles     
                                   --replSet                       //声明采用复制集
                                   --smallfiles                    //因为咱们是在一台机器上练习复制集【所以尽量让空间占小一点】
      4、选择任意一台选择配置:
            use admin                                                        ///先打开 admin 库 
            var rsconf={_id:'rs2',members:[                      ///粘贴 -> 执行
                    {_id:0,host:"192.168.1.202:27017"},
                    {_id:0,host:"192.168.1.202:27018"},
                    {_id:0,host:"192.168.1.202:27019"}]
            } 
      5、根据配置做初始化
            rs.initiate(rsconf);                                             //还在 admin 库(可以理解是目录下)     
            当前初始化窗口出现 rs2:PRIMARY 说明 ok
            rs.status();                                                       //显示当前复制集状态
 
 
后期还可以很方便的增加和删除从服务器(节点):
         删除:
                rs.remove("192.168.1.202:27019");
         添加:
            var rsconf={_id:'rs2',members:[                      ///粘贴 -> 执行
                    {_id:0,host:"192.168.1.202:27017"},【_id:0 为主服务器】
                    {_id:0,host:"192.168.1.202:27018"},
                    {_id:0,host:"192.168.1.202:27019"}]
            } 
            rs.reconfig(rsconf);                                            //重新配置下复制集
 
      在主服务器上做了改动后,来到从服务器上查询报错: error:{"$err":"not master and slaveOk=false",'code':13435} 。是因为从服务器默认不许读写,只和主服务器保持通信。
      要先 rs.slaveOk();   
      再 show tables 等操作。
 
 
     当主服务器故障时,会自动将从服务器提升至主服务器。但是我们就不知道那台服务器是主服务器了(从服务器上是不能进行写操作的)。
      db.isMaster();                              //检测谁是主服务器

MongoDB 的replicattion 复制集练习的更多相关文章

  1. mongodb 3.4复制集配置

    1:启动三个实例 /bin/mongod --config /home/mongodb/db27017/mongodb27017.conf /bin/mongod --config /home/mon ...

  2. mongodb 3.4复制集详解

    1关闭数据库,打开三个mongodb数据库数据库实例 rs.printReplicationInfo() 2:原理 主库能够进行读写操作,一个复制集群只能有一个活跃的主库 一般情况下复制可以分为好几种 ...

  3. 【2016-11-1】【坚持学习】【Day16】【MongoDB】【复制集 分片】

    Mongodb 两种集群方式 复制集 通常是一主一从,一主多从 mongodb的复制至少需要两个节点.其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据. mongodb各 ...

  4. mongoDB研究笔记:复制集概述

    自我学习,仅供参考: 数据库总是会遇到各种失败的场景,如网络连接断开.断电等,尽管journaling日志功能也提供了数据恢复的功能,但journaling通常是针对单个节点来说的,只能保证单节点数据 ...

  5. mongoDB研究笔记:复制集故障转移机制

    上面的介绍的数据同步(http://www.cnblogs.com/guoyuanwei/p/3293668.html)相当于传统数据库中的备份策略,mongoDB在此基础还有自动故障转移的功能.在复 ...

  6. CentOS7 yum方式安装 MongoDB 3.4 复制集

    CentOS7 yum方式安装 MongoDB 3.4 环境.准备 Centos7 系统 配置MongoDB的yum源,添加文件/etc/yum.repos.d/mongodb-org-3.4.rep ...

  7. MongoDB搭建ReplSet复制集群

    MongoDB的复制集是一个主从复制模式 又具有故障转移的集群,任何成员都有可能是master,当master挂掉用会很快的重新选举一个节点来充当master. 复制集中的组成主要成员 Primary ...

  8. MongoDB 3.2复制集单节点部署(四)

    MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 3.2版本进行复制集实验(但MongoDB配置文件 ...

  9. MongoDB 2.6复制集单节点部署(三)

    MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 2.6版本进行复制集实验(但MongoDB配置文件 ...

随机推荐

  1. SQL Server查询数据库空间分配情况、数据库备份信息

    查询数据库空间分配情况: use master go create procedure dbo.proc_getdbspaceused as begin set nocount on create t ...

  2. WPF Template

    ControlTemplate ControlTemplate:用于定义控件的结构和外观,这样可以将控件外观与控件功能分离开. 在xaml中ControlTemplate通常配置到Style中,通过S ...

  3. 51nod 1572 宝岛地图 (预处理四个方向的最大步数优化时间,时间复杂度O(n*m+k))

    题目: 这题如果没有时间限制的话暴力可以解,暴力的话时间复杂度大概是O(k*n),1s的话非常悬. 所以我们需要换个思路,我们对每个点预处理四个方向最多能走的步数,这个预处理时间复杂度是O(n*m). ...

  4. [ Linux ] [ OS ] [ CPU ] Linux系統 OS, CPU, Memory, Disk

    查看 linux 版本 及 Kernel 版本 指令: cat /etc/*-release http://benit.pixnet.net/blog/post/19390916-%E5%A6%82% ...

  5. 推箱子小游戏《格鲁的实验室》13关 - bfs最短路径

    下载了一款推箱子小游戏,第13关的时候怎么也破不了最佳纪录(最少步数是9而我们最好的方案是10步),因为数据比较小(6*8的方阵),所以写了个BFS来找最短路. 游戏的目标是把小黄人推到黄色球,小绿人 ...

  6. 根据SPID查找SQL语句

      SELECT   /*+ ORDERED */          sql_text     FROM v$sqltext a    WHERE (a.hash_value, a.address) ...

  7. SpringCloud学习笔记(9)----Spring Cloud Netflix之声明式 REST客户端 -Feign的使用

    1. 什么是Feign? Feign是一种声明式.模板化的HTTP客户端,在SpringCloud中使用Feign.可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到 ...

  8. day02变量

    一. 什么是变量? 变量:在程序运行过程中,值会发生变化的量.(与之相对应的,常量就是在程序运行过程中,值不会发生变化的量).无论是变量还是常量,在创建时都会在内存中开辟一块空间,用于保存它的值. 二 ...

  9. (WC2018模拟十二)【FJOI2016集训Day7T3】Xor-Mul棋盘

    是不是应该第100篇博文纪念一下? 题解: 本质简单题...但是我没仔细看这题... 观察它的两个式子,都是xor完再乘以某个数,意味着d数组的每个二进制位对答案的贡献都是独立的,可以每一位分开处理. ...

  10. POJ-1511 Invitation Cards 往返最短路 邻接表 大量数据下的处理方法

    题目链接:https://cn.vjudge.net/problem/POJ-1511 题意 给出一个图 求从节点1到任意节点的往返路程和 思路 没有考虑稀疏图,上手给了一个Dijsktra(按紫书上 ...