MYSQL的备份和还原
备份 :副本
RAID1,RAID10 :保证硬件损坏而不会业务中止;
备份和还原 :可以保证因逻辑错误引起的数据丢失
备份类型 :
热备份 :读写不受影响
温备份 :仅可以执行读操作
冷备份 :离线备份,读、写操作均中止
物理备份和逻辑备份
物理备份 :复制数据文件
逻辑备份 :将数据导出至文本文件中
完全备份、增量备份和差异备份
备份什么:
数据、配置文件、二进制日志、事务日志
主从服务器架构
物理备份 :速度快
逻辑备份 :速度慢、丢失浮点数精度:方便使用文本处理工具直接对其处理,可移植能力强;
备份策略 :完全+增量 、 完全+差异
MYSQL备份工具 :
mysqldump : 逻辑备份工具、MyISAM(温)、InnoDB(热备份)
mysqlhotcopy : 物理备份工具、温备份
文件系统工具 :
cp :冷备
lv : 逻辑卷的快照功能,几乎热备;
FLUSH TABLES;
LOCK TABLES
创建快照,释放锁,而后复制数据
第三组工具 :
ibbackup : 商业工具
xtrabackup : 开源工具
MYSQL备份工具比较列表
mysqldump : 逻辑备份
mysqldump(完全备份)+二进制日志
完全+增量
备份单个数据库,或库中单个表
mysqldump DB_NAME [tb1] [tb2]
mysqldump --master-data={0|1|2}
0 : 不记录二进制日志文件及路位置
1 :以CHNAGE MASTER TO的方式记录位置,可用于恢复后直接启动从服务器
2 :以CHNAGE MASTER TO的方式记录位置,但默认为被注释;
--lock-all-tables : 锁定所有表
--flush-logs : 执行日志flush;
如果指定库中的表类型均为InnoDB,可使用--single-transaction启动热备;
备份多个库 :
--all-databases : 备份所有库
--datebases DB_NAME,DB_NAME,... 备份指定库
--events 事件
--routines 存储过程、存储函数
--triggers 触发器
FLUSH TABLES WITH READ LOCK; 刷新表并使用读锁
备份策略 :周完全+每日增量
完全备份:mysqldump
增量备份:备份二进制日志文件(flush logs)
二进制日志 :
set sql_log_bin=1 1=ON 0=OFF
原文地址:https://blog.51cto.com/14087650/2426233