推荐一篇mongodb集群的博客

replication set 多台服务器维护相同的数据副本,提高服务的可用性

1.启动3个实例,且声明属于某复制集

mongod --port 27017 --dbpath /data/r0 --smallfiles --replSet rsa --fork --logpath /var/log/mongo17.log
mongod --port 27018 --dbpath /data/r1 --smallfiles --replSet rsa --fork --logpath /var/log/mongo18.log
mongod --port 27019 --dbpath /data/r2 -smallfiles --replSet rsa --fork --logpath /var/log/mongo19.log

2.配置

rsconf = {
_id : 'rs2',
member :[
{ _id:0,
host:'127.0.0.1:27017'
},
{ _id:1,
host:'127.0.0.1:27018'
},
{ _id:2,
host:'127.0.0.1:27019'
}
]
}

3.初始化

rs.initiate(rsconf);

4.添加节点

rs.add('192.168.1.201:27018');
rs.add('192.168.1.201:27019');

5.查看状态

rs.status();

6.删除节点

rs.remove('192.168.1.201:27019');

7.主节点中插入数据

db.user.insert({uid:1,name:'lily'});

8.连接secondary查询同步情况

mongo --port 27019;
show tables;

9.重新配置

rs.reconfig(rsconfig);

通信机制:

secondary 默认只和primary通信,外界无法读取secondary中的数据

在secondary中设置 rs.slaveOk();就可以了,slave默认不允许读写

停掉primary服务器

db.shutdownServer();

需要练习一下linux下脚本配置mongodb复制集的操作

一个常规的一主两从复制集脚本

#! /bin/bin
IP=192.168.1.202
NA=rs2
if[$1 == 'reset'];then
pkill -9 mongo
rm -rf /home/m*
exit;
fi
if[$1=='install'];then
mkdir -p /home/m17 /home/m18 /home/m19 /home/mlog /usr/local/mongodb/bin/mongod --dbpath /home/m17 --logpath /home/mlog/m17.log --port 27017 --fork --smallfiles --replSet ${NA} /usr/local/mongodb/bin/mongod --dbpath /home/m18 --logpath /home/mlog/m18.log --port 27018 --fork --smallfiles --replSet ${NA} /usr/local/mongodb/bin/mongod --dbpath /home/m19 --logpath /home/mlog/m19.log --port 27019 --fork --smallfiles --replSet ${NA}
exit;
fi
if[$1=='repl'];then
/usr/local/mongodb/bin/mongo <<EOF use admin
var rsconf = {
_id:'rs2',
member:[
{_id:0,host:'${IP}:27017'},
{_id:1,host:'${IP}:27018'},
{_id:2,host:'${IP}:27019'}
]
}
rs.initiate(rsconf);
EOF
fi

mongodb-replication set 复制集的更多相关文章

  1. replication set复制集

    replication set复制集  介绍 replicattion set 多台服务器维护相同的数据副本,提高服务器的可用性,总结下来有以下好处: 数据备份与恢复 读写分离 MongoDB 复制集 ...

  2. mongodb 3.4复制集配置

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

  3. mongodb 3.4复制集详解

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

  4. 【mongoDB运维篇③】replication set复制集

    介绍 replicattion set 多台服务器维护相同的数据副本,提高服务器的可用性,总结下来有以下好处: 数据备份与恢复 读写分离 MongoDB 复制集的结构以及基本概念 正如上图所示,Mon ...

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

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

  6. 【Mongodb】 可复制集搭建

    可复制集 replica set 概念图 可复制集需要至少3个以上的mongodb节点,其中有一个主节点promary,其余的为副本节点secondary 可复制集有三个角色: 主要成员(Primar ...

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

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

  8. [Mongodb] Relica Set复制集集群简单搭建--持续更新

    这里我们搭建一个没有访问控制,奇数个Set没有仲裁者的集群 1.三个配置文件添加 replication.replSetName:"Replica_test" 并启动三个实例2.连 ...

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

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

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

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

随机推荐

  1. Codeforces--596A--Wilbur and Swimming Pool(数学)

     A - Wilbur and Swimming Pool Crawling in process... Crawling failed Time Limit:1000MS     Memory ...

  2. 803E

    dp dp[i][j]表示到了i赢和输的差为j 如果这位是?向dp[i-1][j-1],dp[i-1][j],dp[i-1][j+1]转移,如果是W向dp[i-1][j-1]转移,如果是L向dp[i- ...

  3. iOS中的数据库—使用FMDB

    一.回顾 iOS中的数据存储方式 1.XML属性列表(plist) 写入OC的一些基本数据类型,不是所有对象都可以写入 2.Preference(偏好设置) 本质还是通过“plist”来存储数据,但是 ...

  4. King(差分约束)

    http://poj.org/problem?id=1364 题意:输入i,n,gt(lt),k; 判断是否存在这样一个序列,从第 i 项加到第 n+i 项的和 <(lt) k 或 >(g ...

  5. Gym - 101981J The 2018 ICPC Asia Nanjing Regional Contest J.Prime Game 计数

    题面 题意:1e6的数组(1<a[i]<1e6),     mul (l,r) =l × (l+1) ×...× r,  fac(l,r) 代表 mul(l,r) 中不同素因子的个数,求s ...

  6. Linux学习笔记--文件夹结构

    暂时先上一张图学习吧,先大致了解好,再进行深入的学习.

  7. Vue跨域访问,axios&cors

    先安装node.js和npm,这个不用说了,直接在创建vue项目,然后实践一下跨域访问. 如果npm安装较慢,可安装淘宝镜像,执行下面命令: npm install -g cnpm --registr ...

  8. kerberos认证原理---讲的非常细致,易懂

    前几天在给人解释Windows是如何通过Kerberos进行Authentication的时候,讲了半天也别把那位老兄讲明白,还差点把自己给绕进去.后来想想原因有以下两点:对于一个没有完全不了解Ker ...

  9. 与Java注释相关的一些知识

    * Html标签:        * <a> 可定义锚,主要有以下两种属性            * href(最重要):创建指向另外一个文档的链接(或超链接)            * ...

  10. day008 字符编码之 字符编码 、Python2和Python3字符编码的区别

    计算机基础(掌握) 启动应用程序的流程 双击qq 操作系统接受指令然后把该操作转化为0和1发送给CPU CPU接受指令然后把指令发送给内存 内存接受指令把指令发送给硬盘获取数据 qq在内存中运行 文本 ...