5.mysql学习笔记:复制的原理

原创 2015年11月20日 13:10:24

基于语句的复制

在早期的mysql版本中只支持基于语句的复制(也称为逻辑复制),实际上就是把主库上的sql语句再执行一遍。

特点:

1.实现简单,只需要执行相关sql语句,能够让主备保持同步。
2.如果语句中包含元数据信息(比如当前时间),则会出现问题。
3.而且更新必须是串行的,这需要更多的锁。


基于行的复制

从mysql5.1开始支持基于行的复制,这种方式将实际的数据记录在二进制文件中。

优点:
由于无需重放更新主数据库的查询过程,直接进行复制,所以可以高效的复制数据。

缺点:
有的时候只是需要复制指令,全表的更新,如果使用基于行的复制将会造成大的开销。

mysql可以在基于语句的复制基于行的复制之间进行动态的切换。默认情况下使用的是基于语句的复制


下面我们总结下两种复制的优缺点:

基于语句复制的优点

可以适用多种情况,本质上就是重新执行sql语句。

基于语句复制的缺点

实用面太窄,比如正在实用触发器或者存储过程,就不要实用基于语句的复制。

基于行的复制模式的优点

1.对于所有的sql构造、触发器、存储过程等都可以正确地执行。
2.减少了锁的使用;
3.基于行的复制能够帮助快速地找到并解决数据不一致的情况。

基于行的复制模式的缺点

1.由于语句并没有出现在日志记录里,所以无法判决执行了那些sql。只能知其然不能知其所以然。


版权声明:本文为博主原创文章,未经博主允许不得转载。

《计算机网络》第五版 复习笔记

复习笔记,配套谢希仁《计算机网络》第五版。markdown排版处理。
  • hcbbt
  • hcbbt
  • 2014年01月14日 20:20
  • 14658

springmvc学习笔记(1)-框架原理和入门配置

本文主要介绍springmvc的框架原理,并通过一个入门程序展示环境搭建,配置以及部署调试。...
  • h3243212
  • h3243212
  • 2016年03月08日 16:20
  • 7994

MySQL学习笔记---基础概念和一些基础SQL语句(一)

MySQL学习笔记,以防遗忘 数据库基本概念 数据库:保存有组织的数据的容器(通常是一个文件或一组文件)。 表:某种特定类型数据的结构化清单,数据库中的表都有一个唯一的名字用来标识自己。 模式:关于数...
  • Jung_zhang
  • Jung_zhang
  • 2016年04月14日 20:11
  • 1652

MySQL5学习笔记

  • 2010年05月30日 23:43
  • 453KB
  • 下载

【Struts2学习笔记(5)】Struts2的处理流程及工作原理

(1)Struts2的处理流程示意图
  • u010870518
  • u010870518
  • 2014年10月01日 13:28
  • 1165

<学习笔记5>数据挖掘原理与运用-sql server2008 数据库

2016/10/26 第十三章 挖掘OLAP立方体 理解星型模式和雪花模式 星型模式中间是事实表,周围是事实表中各个属性的维表。雪花模式周围是查找表。 理解维和层次。 通常...
  • qq_30743289
  • qq_30743289
  • 2016年10月27日 14:06
  • 224

spring boot学习笔记(5)springboot运行原理

spring boot运行原理 关于spring boot运行原理,还是需要回到@SpringBootApplication注解上,他是一个组合注解,核心功能是由@EnableAutoConfig...
  • qq_33637750
  • qq_33637750
  • 2018年01月09日 16:44
  • 13

LVS学习笔记 5高可用集群原理

首先明确一个概念,监测结点,监测的是什么?是结点主机还是节点主机上的某个资源?当然是资源。主机在线,资源就一定可用么?当然不是。对某资源的监测:资源运行脚本遵循一定规范,能接受四个参数:start、s...
  • sweifan
  • sweifan
  • 2015年05月11日 22:29
  • 368

Hadoop学习笔记(5)———Mapreduce工作原理

Hadoop学习笔记(5)————Mapreduce工作原理  一个MapReduce作业在hadoop上运行的整个过程可以分为4个实体: (1)、客户端,提交MapReduce作业; 在客户端...
  • DPC27149
  • DPC27149
  • 2014年04月10日 18:21
  • 2179

操作系统精髓与设计原理(原书第6版)——学习笔记(5)

 附录1B 过程控制          控制过程调用和返回的最常用的技术是使用栈。 栈的实现          栈是一个有序的元素集合,一次只能访问一个元素,访问点称...
  • henni_719
  • henni_719
  • 2016年07月01日 15:06
  • 641
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:5.mysql学习笔记:复制的原理
举报原因:
原因补充:

(最多只允许输入30个字)