MySQL复制的基本概念和实现
MySQL的复制的概念是完成水平扩展的架构
MySQL性能方面的扩展方式有scale on(向上扩展,垂直扩展)
scale out(向外扩展,水平扩展)
MySQL保存二进制日志:
statement:基于语句模式
row:基于行模式
mixed:混合模式
MySQL复制默认为异步工作模式
SLAVE:IO thread:向主服务请求二进制日志中的事件
SQL thread:从中继日志读取事件并在本地执行
MASTER:binlog dump:将IO thread请求的事件发送给对方
工作架构:
从服务器:有且只能有一个主服务器
MariaDB-10:支持多主模型,多源复制(multi-source replication)
一主多从:
读写分离:主从模型下,让前端分发器能识别读/写,并且按需调度至目标主机
读写分离的中间件有amoba:变形虫
mysql-proxy:不稳定
双主模型:master-master
1.必须设定双方的的自动增长属性,以避免冲突
auto_increment_increment = #
设定起始值
auto_increment_offset = 2
设定步长
2.数据不一致:
功用:均衡读请求:写请求双方一样
示例:主从复制的配置
版本
1.双方的MySQL要一致
2.如果不一致:主的要低于从的
从哪儿开始复制:
1.都从0开始
2.主服务器已经运行一段时间,并且存在不小的数据集,把主服务器备份,然后再从服务器恢复,从主服务器上备份处的位置开始复制
配置过程:
主服务器:
1.改server-id
2.启用二进制日志
3.创建有复制权限的账号
grant replication slave,replication client on *.* to 'uername'@'hostname' identified by 'password'
flush privileges
从服务器:
1.给server-id
2.启用中继日志
relay-log = /mydata/relaylogs/slave-bin
3.连接主服务器
连接主服务器命令:change master to
| MASTER_HOST = 'host_name' 主服务器地址
| MASTER_USER = 'user_name' 以那个用户的身份复制
| MASTER_PASSWORD = 'password'密码
| MASTER_PORT = port_num端口
4.启动复制线程
START SLAVE;
MySQL复制的基本概念和实现的更多相关文章
- MySQL复制环境(主从/主主)部署总结性梳理
Mysql复制概念说明Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves) ...
- MySQL复制进阶
Ⅰ.背景 搭建MySQL复制环境非常简单 你的系统是否也是像我之前那么搭建的呢? 那么,你的复制系统是否出现过以下的情况呢? 复制报错,例如:1062,1032 主从数据不一致 Ⅱ.真正高可靠复制环境 ...
- MySQL 复制 - 性能与扩展性的基石 1:概述及其原理
1. 复制概述 MySQL 内置的复制功能是构建基于 MySQL 的大规模.高性能应用的基础,复制解决的基本问题是让一台服务器的数据与其他服务器保持同步. 接下来,我们将从复制概述及原理.复制的配置. ...
- MySQL复制相关技术的简单总结
MySQL有很多种复制,至少从概念上来看,传统的主从复制,半同步复制,GTID复制,多线程复制,以及组复制(MGR).咋一看起来很多,各种各样的复制,其实从原理上看,各种复制的原理并无太大的异同.每一 ...
- 深入MySQL复制(一)
本文非常详细地介绍MySQL复制相关的内容,包括基本概念.复制原理.如何配置不同类型的复制(传统复制)等等.在此文章之后,还有几篇文章分别介绍GTID复制.半同步复制.实现MySQL的动静分离,以及M ...
- 深入MySQL复制(二):基于GTID复制
相比传统的MySQL复制,gtid复制无论是配置还是维护都要轻松的多.本文对gtid复制稍作介绍. MySQL基于GTID复制官方手册:https://dev.mysql.com/doc/refman ...
- 涂抹mysql笔记-mysql复制特性
<>mysql复制特性:既可以实现整个服务(all databases)级别的复制,也可以只复制某个数据库或某个数据库中的某个指定的表对象.即可以实现A复制到B(主从单向复制),B再复制到 ...
- Mysql主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录
Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一 ...
- MySQL复制以及调优
一. 简介 MySQL自带复制方案,带来好处有: 数据备份. 负载均衡. 分布式数据. 概念介绍: 主机(master):被复制的数据库. 从机(slave):复制主机数据的数据库. 复制步骤: (1 ...
随机推荐
- CSS 水平居中
一.水平居中:行内元素解决方案 居中元素:文字.链接以及其它行内元素(inline或inline-*类型的元素,如inline-block,inline-table,inline-flex)解决方案: ...
- java基础之 string
一 string public final class String 继承自java.lang.Object类. 实现了接口: java.io.Serializable, Comparable< ...
- [微软]technet与msdn
我们搜索一个微软术语,有时定位到technet页面,有时定位到msdn页面.我直观的理解就是technet教人们如何使用微软产品,而msdn指导人们如何开发基于微软产品的软件.那么微软对它们具体定位是 ...
- Controller方法的返回值
方法的返回值1.ModelAndView这个就不多说,这是最基础的,前面定义一个ModelAndView,中途使用addObject方法添加属性,再返回.视图解析器会自动扫描到的.2.String这个 ...
- poj1276 多重背包
//Accepted 1100 KB 47 ms //多重背包 #include <cstdio> #include <cstring> #include <iostre ...
- JS 验证一组input框是否为空的方法
function checkInput() { var $tr = $("#tb_confirmed .scrollContent").find("tr"); ...
- MVP架构。。。。
Model-View-Presenter(MVP)概述 MVC模式已经出现了几十年了,在GUI领域已经得到了广泛的应用,由于微软ASP.NET MVC Framework的出现,致使MVC一度成 ...
- (转)Position定位:relative | absolute
原文:http://hi.baidu.com/zxc0420/item/9ada5110845ba1e89c778a08 Position定位:relative | absolute 定位一直是WEB ...
- BZOJ 1584 打扫卫生
好题! 本来想用一般的方法瞎搞个线段树什么的...发现不行... 然后翻题解. 注意到最优答案不会超过n,所以维护b[]数组,b[j]表示b[j]+1.....i有j个不同的数. 复杂度n√n. #i ...
- IO复用(Reactor模式和Preactor模式)——用epoll来提高服务器并发能力
上篇线程/进程并发服务器中提到,提高服务器性能在IO层需要关注两个地方,一个是文件描述符处理,一个是线程调度. IO复用是什么?IO即Input/Output,在网络编程中,文件描述符就是一种IO操作 ...