mongodb 主从

因为条件限制我们把主从放在一台服务器上面

相关参数

在启动从的时候可以增加以下参数

--autoresync 当发现从服务器的数据不是最新时,开始从主服务器请求同步数据

--slavedelay 同步延迟,单位:秒

--only 复制指定的数据库,默认复制所有的库

-oplogSize 主节点的oplog日志大小,单位为M,建议设大点(更改oplog大小时,只需停主库,删除local.,然后加--oplogSize= 重新启动即可,*代表大小)

配置

为了方便管理我们使用加载配置文件的启动方式,以下是配置文件。

dbpath=/home/xiaohe/mongodb-27017/db
logpath=/home/xiaohe/mongodb-27017/logs/mongodb.log
port=27017
nohttpinterface=true
master=true
oplogSize=4096
#auth=true

dbpath=/home/xiaohe/mongodb-27018/db
logpath=/home/xiaohe/mongodb-27018/logs/mongodb.log
port=27018
nohttpinterface=true
slave=true
source=127.0.0.1:27017
#auth=true

启动

/home/xiaohe/mongodb-27017/bin/mongod --config /home/xiaohe/mongodb-27017/conf/mongodb.conf
/home/xiaohe/mongodb-27018/bin/mongod --config /home/xiaohe/mongodb-27018/conf/mongodb.conf

测试同步

登录主

/home/xiaohe/mongodb-27017/bin/mongo 127.0.0.1:27017

use xiaohe

db.xiaohe.insert({"name":"zxc"})

show dbs 你会看到新创建的库 xiaohe

登录从

/home/xiaohe/mongodb-27018/bin/mongo 127.0.0.1:27018

show dbs 查看 是否可以看到新创建的库 xiaohe

接着查看数据

db.xiaohe.find()

如果可以看到刚才插入的数据,说明同步正常

问题查看

查看同步

db.printReplicationInfo()

附录一、Slave 顶替 Master

如果主服务器 10.0.0.11 宕机了,

此时需要用 10.0.0.12 机器来顶替 master 服务,

步骤如下:

停止 10.0.0.12 进程(mongod)

kill -2 ps -ef|grep mongod|grep -v grep|awk '{print $2}'

删除 10.0.0.12 数据目录中的 local.*

rm -rf /elain/data/mongodb/db/local.*

以--master 模式启动 10.0.0.12

/elain/apps/mongodb/bin/mongod --fork --master --oplogSize=4096 --port 27001 --dbpath /elain/data/mongodb/db --logpath /elain/logs/mongodb/mongodb.log

附录二、切换 Master/Slave 角色

切换主库10.0.0.11和从库10.0.0.12的角色

步骤如下:(命令略)

用 fsync 命令暂停 主库 上的写操作,

关闭 从库 上的服务

清空 从库 上的 local.文件

用-master 选项重启 从库 服务

在 从库 上执行一次写操作,初始化 oplog,获得一个同步起始点

关闭 从库 服务,此时 从库 已经有了新的 local.
文件

关闭 主库 服务,并且用 从库 上新的 local.文件来代替 主库 上的 local.文件(建议先压缩再COPY)

用-master 选项重启 从库 服务

在启动slave的选项上加一个-fastsync 选项来重启 主库 服务

mongodb 主从的更多相关文章

  1. mongodb系列之--mongodb 主从配置与说明

    一.为什么要配置mongodb的主从: 1.做主从,可以说是做数据的备份,有利于故障的恢复 2.做主从,可以做到读写分离,主节点负责写操作,从节点负责读操作,这样就把读写压力分开,保证系统的稳定性. ...

  2. MongoDB自学------(4)MongoDB主从搭建

    MongoDB复制原理 mongodb的复制至少需要两个节点.其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据. mongodb各个节点常见的搭配方式为:一主一从.一主多 ...

  3. MongoDB主从配置

    master的配置 # cat mongod.conf dbpath = /app/sinova/mongodata/db            #指定数据库目录 logpath = /app/sin ...

  4. MongoDB 主从和Replica Set

    目前主要的MongoDB高可用架构包含: 主从架构 Replica set副本集方式 sharding分片 注意:使用高可用架构后ips,qps相比单实例都会有一定程度的下降,其中rs下降不是他太明显 ...

  5. mongodb主从(副本集附仲裁节点)部署带认证模式

    环境:OS:CentOS 7DB:3.0.15机器角色:192.168.1.134:10001 主192.168.1.135:10002 从192.168.1.135:10003 仲裁节点 1.下载相 ...

  6. mongodb主从以及auth主从 配置详解

    1.主服务器配置   #auth = true   dbpath = /data/mongodb/db logpath = /data/mongodb/log/mongodb.log   port = ...

  7. mongodb主从备份 和 手动主从切换

    环境: 主机A:172.16.160.91 主机B:172.16.160.92 配置主机A [root@master zhxf]# cat docker-compose.yml version: '3 ...

  8. mongodb主从搭建

    #tigergao 官网进行下包,可以下载源码包或者二进制包,本次下载的为二进制包,进行试验. 主服务器搭建: mkdir mongomaster cp mongodb-linux-x86_64-rh ...

  9. mongoDB主从和集群

    主从(windows下的配置) 主服务器设置 mongod --dbpath=F:\mongoDB\db --master \\dbpath是设定数据存放路径 --master是指定为主库 从服务器设 ...

随机推荐

  1. web语义化理解

    含义: Web语义化是指使用语义恰当的标签,使页面有良好的结构,页面元素有含义,能够让人和搜索引擎都容易理解. 为什么要web语义化?如今互联网都到了web2.0的时代了,HTML语言在不断的进化并发 ...

  2. PHP简介 变量 输出

    一.PHP概念 Hypertext Preprocessor 超文本预处理器,是一种开源脚本语言,语法吸收了C语言,Java,Perl的特点,用于web开发领域, PHP是将程序嵌入到Html文档中执 ...

  3. 【转载】Reactor模式和NIO

    当前分布式计算 Web Services盛行天下,这些网络服务的底层都离不开对socket的操作.他们都有一个共同的结构:1. Read request2. Decode request3. Proc ...

  4. js中深拷贝代码实现

    function copy(original,o){ if(typeof original != 'object') return original; var o = o || (Array.isAr ...

  5. hiho152周 - 水题 区间问题

    题目链接 给定两个区间集合 A 和 B,其中集合 A 包含 N 个区间[ A1, A2 ], [ A3, A4 ], ..., [ A2N-1, A2N ],集合 B 包含 M 个区间[ B1, B2 ...

  6. 优动漫PAINT简简单单绘画绣球花

    本文分享使用优动漫PAINT简简单单绘画绣球花教程: 相关资讯还可以关注http://www.dongmansoft.com 最后告诉你绣球花的花语,还是很和谐美好的呢! 绣球花没有茉莉花的芳香四溢, ...

  7. Collections库使用

    Date: 2019-05-27 Author: Sun Collections库 ​ Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collec ...

  8. jdk1.8源码分析-hashMap

    在Java语言中使用的最多的数据结构大概右两种,第一种是数组,比如Array,ArrayList,第二种链表,比如ArrayLinkedList,基于数组的数据结构特点是查找速度很快,时间复杂度为 O ...

  9. 微信小程序手势滑动卡片案例

    最近工作中有项目要使用微信小程序技术进行开发,其中一项功能困扰了我很久,卡片滑动动效以及手势识别.经过一番研究和参考,现在把成果展示.记录自己踩到的坑,如果大家有需要,也可以帮助到大家. 效果图: 首 ...

  10. Mean, Median, Mode, Range, and Standard Deviation

    Descriptive statistics tell you about the distribution of data points in data set. The most common m ...