mysqldump备份时如何保持数据的一致性

MySQLdump对不同类型的存储引擎,内部实现也不一样。主要是针对两种类型的存储引擎:支持事务的存储引擎(如InnoDB)和不支持事务的存储引擎(如MyISAM),下面分别看看这两种存储引擎的实现:


1、对于支持事务的引擎如InnoDB,参数上是在备份的时候加上--single-transaction保证数据一致性


--single-transaction实际上通过做了下面两个操作:


1).在开始的时候把该session的事务隔离级别设置成repeatable read;


2).然后启动一个事务(执行begin),备份结束的时候结束该事务(执行commit)


有了这两个操作,在备份过程中,该session读到的数据都是启动备份时的数据(同一个点)。可以理解为对于innodb引擎来说加了该参数,备份开始时就已经把要备份的数据定下来了,备份过程中的提交的事务时是看不到的,也不会备份进去。

分享名称:mysqldump备份时如何保持数据的一致性
分享URL:http://hxwzsj.com/article/pcddeo.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 营销型网站建设 成都网站建设 成都网站设计 网站制作 营销型网站建设 成都网站设计公司 品牌网站建设 高端网站设计推广 重庆手机网站建设 网站设计 定制网站设计 响应式网站设计 成都网站设计 重庆企业网站建设 成都网站建设 温江网站设计 成都网站设计制作公司 手机网站制作 企业网站建设 定制网站设计 高端网站设计 成都定制网站建设