mysql 5.5 mysqldump备份原理
开启general_log日志,获取mysqldump执行语句
show VARIABLES like 'general_log%'
set GLOBAL general_log=on
执行备份命令
mysqldump --single-transaction -uroot -pdmysqlbadmin --master-data=2 -A -R -E >/data/test.sql
得到general_log日志
161109 14:48:25 8 Connect root@localhost on
8 Query /*!40100 SET @@SQL_MODE='' */
8 Query /*!40103 SET TIME_ZONE='+00:00' */
8 Query FLUSH /*!40101 LOCAL */ TABLES
8 Query FLUSH TABLES WITH READ LOCK
8 Query SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
8 Query START TRANSACTION /*!40100 WITH CONSISTENT SNAPSHOT */
8 Query SHOW MASTER STATUS
8 Query UNLOCK TABLES
8 Query SELECT LOGFILE_GROUP_NAME, FILE_NAME, TOTAL_EXTENTS, INITIAL_SIZE, ENGINE, EXTRA FROM INFORMATION_SCHEMA.FILES WHERE FILE_TYPE = 'UNDO LOG' AND FILE_NAME IS NOT NULL GROUP BY LOGFILE_GROUP_NAME, FILE_NAME, ENGINE ORDER BY LOGFILE_GROUP_NAME
8 Query SELECT DISTINCT TABLESPACE_NAME, FILE_NAME, LOGFILE_GROUP_NAME, EXTENT_SIZE, INITIAL_SIZE, ENGINE FROM INFORMATION_SCHEMA.FILES WHERE FILE_TYPE = 'DATAFILE' ORDER BY TABLESPACE_NAME, LOGFILE_GROUP_NAME
8 Query SHOW DATABASES
8 Init DB accesslog
8 Query SHOW CREATE DATABASE IF NOT EXISTS `accesslog`
8 Query show tables
8 Query show table status like 'accesslog'
8 Query SET OPTION SQL_QUOTE_SHOW_CREATE=1
8 Query SET SESSION character_set_results = 'binary'
8 Query show create table `accesslog`
8 Query SET SESSION character_set_results = 'utf8'
8 Query show fields from `accesslog`
8 Query SELECT /*!40001 SQL_NO_CACHE */ * FROM `accesslog`
8 Query SET SESSION character_set_results = 'binary'
8 Query use `accesslog`
8 Query select @@collation_database
8 Query SHOW TRIGGERS LIKE 'accesslog'
8 Query SET SESSION character_set_results = 'utf8'
8 Query show events
8 Query use `accesslog`
8 Query select @@collation_database
8 Query SET SESSION character_set_results = 'binary'
8 Query SHOW CREATE EVENT `E_delAccessLog`
8 Query SET SESSION character_set_results = 'utf8'
8 Query use `accesslog`
8 Query select @@collation_database
8 Query SET SESSION character_set_results = 'binary'
8 Query SHOW FUNCTION STATUS WHERE Db = 'accesslog'
8 Query SHOW PROCEDURE STATUS WHERE Db = 'accesslog'
8 Query SHOW CREATE PROCEDURE `P_delAccessLog`
8 Query SET SESSION character_set_results = 'utf8'
测试方法,这里就不贴了,总结
1、非事务引擎表,有数据不一致风险,例如:myisam。
2、执行备份过程中,不允许有create table 及create database操作,事务里无法控制该类型语句,导致不一致备份。
3、如果之前有使用osc在线修改表结构,等它执行完后,再做备份。
mysql 5.5 mysqldump备份原理的更多相关文章
- mysqldump备份原理
现网中数据库运维时,要经常对数据库做热备.为保证恢复时数据的完整性与一致性, 一种方法是在备份之前锁表,但锁表会影响正在运行的业务. mysqldump是当前MySQL中最常用的备份工具,通过mysq ...
- mysql学习(4)-mysqldump备份和恢复数据
背景 最近在公司做数据迁移方面的工作,使用mysql数据库在测试环境模拟数据迁移,在迁移测试的过程中需要做数据备份和恢复 mysql数据备份和恢复比较简单,可以选择mysqldump工具,这里简单提一 ...
- mysqldump备份原理6
写在前面:我们在使用mysqldump备份数据时,请一定记住要加上 -q 参数,后果可能是很严重的,不要给自己挖坑哦.到底为什么呢,且听我慢慢道来! 先来看看 mysqldump –help 中,关于 ...
- mysqldump 备份原理8
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; http://www.cnblogs.com/lyhabc/p/38 ...
- mysqldump 备份原理9
前文的一个细节http://blog.itpub.net/29254281/viewspace-1392757/ 5.--master-data + --single-transaction 同时 ...
- mysql备份与还原-mysqldump备份、mysql与source还原
以下都以在linux操作系统上的mysql为例 mysqldump备份 mysqldump实际就是将数据库中的数据转化为建库.建表和插入记录的sql语句 1.备份一个数据库 [或其中几个表],不指定表 ...
- mysqldump+mydumper+xtrabackup备份原理流程
mysqldump备份原理 备份的基本流程如下: 1.调用FTWRL(flush tables with read lock),全局禁止读写 2.开启快照读,获取此时的快照(仅对innodb表起作用) ...
- MySQL备份原理详解
备份是数据安全的最后一道防线,对于任何数据丢失的场景,备份虽然不一定能恢复百分之百的数据(取决于备份周期),但至少能将损失降到最低.衡量备份恢复有两个重要的指标:恢复点目标(RPO)和恢复时间目标(R ...
- mysqldump和xtrabackup备份原理实现说明
背景: MySQL数据库备份分为逻辑备份和物理备份两大类,犹豫到底用那种备份方式的时候先了解下它们的差异: 逻辑备份的特点是:直接生成SQL语句,在恢复的时候执行备份的SQL语句实现数据库数据的重现. ...
随机推荐
- C#中文本模板(.tt)
关于C#中文本模板(.tt)的简单应用 这两天做项目突遇 .tt文件,之前没有接触过,so查询学习做笔记,帮助记忆和后来者. 在项目添加中点击选择文本模板 下面贴出代码,做了简单的注释 1 2 3 4 ...
- 序列化(ObjectOutputStream和ObjectInputStream)(切记:out是输出到本地中,in是输入到程序中)
注意:序列化自定义类必须实现一个接口Serializable,在c#中序列化自定义类是使用特性也就是[Serializable] //要实现序列化的类 public class Student imp ...
- linux创建进程和等待进程退出
在WIN32下,在一个进程里我们可以使用CreateProcess()创建一个进程,然后通过调用WaitForSingleObect(), WaitForMultipleObject()等待进程退出. ...
- HTTP/1.1与HTTP/1.0的区别
HTTP/1.1与HTTP/1.0的区别 下面主要从几个不同的方面介绍HTTP/1.0与HTTP/1.1之间的差别,当然,更多的内容是放在解释这种差异背后的机制上. 1 可扩展性 可扩展性的一个重要原 ...
- 2014.3.11-C语言学习小结
文件操作: 知识点: 持久化 1.文本文件的读写 2.二进制文件的读写 3.缓冲文件系统 1.打开文件 2.读写文件 3.保存 4.关闭文件 ============================= ...
- 2014.3.4-C语言学习小结
位操作: 知识点: 1.位运算符 2.位移运算符 1.将指定位设置为12.将指定位设置为03.获取指定位的内容 ==========================复习二进制 1.二进制转换 10-- ...
- messageBox以及新窗体的使用
DialogResult dr = MessageBox.Show("你确定要点击吗", "安全提示", MessageBoxButtons.YesNo); ...
- 手机APP下单支付序列图
今天安装了Visio,学习了下如何使用,画了一下公司现在项目的下单支付序列图,话就不多说了,直接上图,处女作,欢迎指正!
- sequence diagram
[UML]UML系列——时序图(顺序图)sequence diagram 系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.exte ...
- [转]Creating an iPhone Daemon
ref: http://chrisalvares.com/blog/7/creating-an-iphone-daemon-part-1/ http://chrisalvares.com/blog/3 ...