Mysql备份恢复

1.备份的解释
1)热备——数据库业务正常运行时的一致性恢复
温备——锁表,只能查询,不能写操作
冷备——停止数据库业务,备份数据
2)逻辑备份——基于SQL语句
物理备份——基于磁盘数据文件
3)全备——全库备份,备份所有数据
增量——备份变化(增加)的数据


2.逻辑备份与物理备份的比较

逻辑备份Mysqldump
1)特点
不用下载安装,可以直接使用;
备份出SQL文件,文本格式,可读性高,便于备份;
压缩比高,节省磁盘空间;
依赖于数据库引擎,需要从磁盘把数据读出,然后转换成SQL进行存储,比较耗费资源,数据量大的话效率较低。
2)参数意义
-A 全备
-B 单个或多个库
–set-gtid-purged=OFF 常规备份解决警告问题
–set-gtid-purged=ON 主从环境时添加
-R 备份存储过程及函数(类似shell脚本)
–triggers 备份触发器
-E 备份事件
-F 在备份开始时,刷新一个新binlog日志

–master-data=1
change master to命令形式,可以用作主从复制

–master-data=2
(1)会记录备份时的二进制日志信息
(2)自动锁表
不加–single-transaction,温备份
加上–single-transaction,对InnoDB表进行不锁表(快照)备份

–single-transaction
对innodb表进行一致性快照备份,不锁表


xtrabackup物理备份
1)特点
类似于直接cp数据文件,不需要管逻辑结构,相对来说性能较高,同数据量级别下,物理备份速度更快;
可读性差;
压缩比低,需要更多磁盘空间
2)备份理念
针对非innodb表,锁表并copy所有文件
针对innodb表,立刻触发CKPT,copy所有相关文件(ibdata.ibd.frm),并将备份时产生的,新的数据变化的部分redo一起备份;恢复时,xbk会调用innodb的CSR过程,将数据和redo的LSN追平,进行一致性恢复。

ps. XBK在innodb表备份恢复的流程
–xbk备份执行的瞬间,立即触发ckpt,已提交的数据脏页,从内存刷写到磁盘,并记录此时的LSN号
–备份时,拷贝磁盘数据页,并且记录备份过程中产生的redo和undo一起拷贝走,也就是CKPT的LSN之后的日志
–在恢复之前,模拟Innodb“自动故障恢复”的过程,将redo与undo进行应用
–恢复过程是cp 备份到原来数据目录下

参考文章:
https://www.jianshu.com/p/6fbdcb7695cb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值