Mongo集群之主从复制
上线的系统。数据存储是重要部位。若一个公司的数据库部署还是待用单点部署,那若是宕机或是机器被损坏则是多糟糕的事情呀。
主从复制的部署方式为下图
主从复制是一个简单的数据库同步备份集群技术。这样的方式简单灵活,可用于备份、故障恢复。读扩展。为了平衡负载,一般通过读写分离模式。即主库写、从库读。
要明白
在数据库集群中要明白知道谁是主server,主server仅仅有一台
从server要知道自己的数据源也就是对于的主server是谁
这里我们用两台数据库进行模拟。一个主master,一个从数据库。Master用来确定主server,slave用来控制增server
master配置
配置主server数据库信息
Master.conf
dbpath=J:\java\mongoSlave\master\database #主server地址
port =8888 #主数据库端口号
bind_ip= 127.0.0.1 #主数据库所在server
master=true#确定为从server
启动配置文件
mast.bat
mongod --configmast.conf
连接数据库文件mongConn.bat
mongo 127.0.0.1:8888
依次启动mast.bat 。mongConn.bat连接数据库
显示登录成功信息
slave配置
从server的配置信息
dbpath=J:\java\mongoSlave\salve1\database #从server地址
port =7778 #从数据库port号
bind_ip= 127.0.0.1 #从数据库所在server
source= 127.0.0.1:8888 #确定主的数据库port号
slave=true#确定为从server
启动数据配置
mongod --configslave.conf
连接数据库配置
mongo 127.0.0.1:7778
再次启动从server
启动成功后例如以下图
从server启动
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
測试加入数据
在master主数据库创建foobar数据库,加入集合,并集合中有一条数据。
查看从数据库。则有主数据库加入的数据
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
动态扩充从数据库
使用shell脚本
这个时候我们的加入新数据的配置就略微有所不同了
dbpath=J:\java\mongoSlave\savle2\database #从server地址
port =7779 #从数据库port
bind_ip= 127.0.0.1 #从数据库所在server
#source = 127.0.0.1:8888 #确定我的数据库port号 删除了主server的地址
slave=true#确定为从server
我们通过shell命令进行配置,打开从server数据库命令窗体
Use local
Db.sources.find()
Db.sources.insert({"host":"127.0.0.1:8888"}})
就连接上主server,并复制数据库了
小结:
主从数据库复制,加入数据仅仅能在主数据库。而从数据库仅仅能够进行数据的查找。对于大数据量这样的情况有些不适应。这时候我们就须要第二种形式,分片技术,下篇介绍副本集
Mongo集群之主从复制的更多相关文章
- 搭建高可用mongo集群3.4版本
搭建高可用mongo集群3.4版本 说在开始之前:在搭建这个环境之前,已经有了一个师兄搭好的环境,虽然一样很棒,但是没有经过自己的手出来的东西,还是不属于自己,所以摸索着自己搭建一个吧,好巧不巧的是, ...
- Mongo集群Java连接时UnknownHostException错误
今天在 Java 连接 Mongo 集群时报了一个超时的错误,但是在本地客户端连接单节点的时候却能连上,具体报的错误如下: Caused by: com.mongodb.MongoTimeoutExc ...
- mongo 集群(副本)搭建过程记录
最近搭建mongo集群,回忆总结,作以记录.整个过程主要参考以下两篇文章,但是过程并不顺利,有些问题需要记录.https://www.cnblogs.com/dba-devops/p/7130710. ...
- 高可用性的mongo集群搭建
mongoDB安装 参照:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/ 配置yum管理包 在路径/etc/y ...
- Mongo集群搭建
1.集群角色及架构 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置服务器等 mongos,数据库集群请求的入口,所有的请求都通过mongos进行协调,不需要在应用程序添加一个路由选择器 ...
- 6.非关系型数据库(Nosql)之mongodb:集群(主从复制)
1.主从复制是MongoDB最经常使用的复制方式.这样的方式很灵活,可用于备份.故障恢复.读扩展等 2最主要的设置方式就是建立一个主节点和一个或多个从节点,每一个从节点要知道主节点的地址. 执行 ...
- MongoDB学习笔记~Mongo集群和副本集
回到目录 一些概念 对于Mongo在数据容灾上,推荐的模式是使用副本集模式,它有一个对外的主服务器Primary,还有N个副本服务器Secondary(N>=1,当N=1时,需要有一台仲裁服务器 ...
- 数据库集群 MySQL主从复制
MySQL主从复制 本节内容我们联系使用MySQL的主从复制功能配置Master和Slave节点,验证数据MySQL的数据同步功能. 因为要使用多个MySQL数据库,所以不建议在电脑上安装多个MySQ ...
- 【Redis学习之八】Redis集群:主从复制
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 redis-2.8.18 Redis集群分类: 主从复制 R ...
随机推荐
- (六)Redux进阶
1 UI组件与容器组件的拆分 UI组件(傻瓜组件):只负责页面显示,没有任何逻辑 容器组件(聪明组件):并不去管UI到底长成什么样,关注的是整个业务逻辑 2 无状态组件 一个普通的函数就是无状态组件 ...
- 快速沃尔什变换(FWT)笔记
开头Orz hy,Orz yrx 部分转载自hy的博客 快速沃尔什变换,可以快速计算两个多项式的位运算卷积(即and,or和xor) 问题模型如下: 给出两个多项式$A(x)$,$B(x)$,求$C( ...
- Linux 重启防火墙失败
CentOS 7 执行service iptables start出现redirecting to systemctl ...Failed to ...not loaded. 如果出现以下错误,好像说 ...
- H3C S5130交换机堆叠操作
配置过程中注意事项: 1.最好提前定义好IRF的主从设备,可通过IRF优先级进行定义,越大越优 2.一定要在使能IRF之前就保存配置(因为使能过程中,会出现设备重启的情况,如果设备重启后配置丢失,会导 ...
- 实验了一下对于struct引用的成员的改动
今天写代码的时候,不确定struct用引用传递给函数的时候,他的成员在函数里面改变的时候,是否能影响到外面. 实验了一下 #include <stdio.h> #include <s ...
- 不安全的直接对象引用:你的 ASP.NET 应用数据是否安全?
介绍 作为一个在X94的航空工程师,你的老板要求你从2号楼的工程图中检索出一个特定的专利.不幸的是,进入大楼需要你出示你具有进入大楼的资格的证明,然后你迅速地以徽章的形式出示给了保安.到了十三楼,进入 ...
- Codeforces Round #249 (Div. 2) (模拟)
C. Cardiogram time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- 怎样选择正确的HTTP状态码
本文来源于我在InfoQ中文站翻译的文章.原文地址是:http://www.infoq.com/cn/news/2015/12/how-to-choose-http-status-code 众所周知. ...
- Sql中把datetime转换成字符串(CONVERT)
一.回想一下CONVERT()的语法格式: CONVERT (<data_ type>[ length ], <expression> [, style]) 二.这里注重说明一 ...
- cpc,tank
先保存一段错误的代码 #include<iostream> #include<cstdio> #include<cstring> #include<algor ...