在之前的工作中是如何对数据库进行备份的?
如何对MYSQL进行增量备份和恢复?
如何对binlog进行备份?
备份方式
mysqldump
mysqldump的优点
- 备份结果为可读的SQL文件,可用于跨版本跨平台恢复数据。
- 备份文件的尺寸小于物理备份,便于长时间存储。
- MySQL发行版自带工具,无需安装第三方软件。
mysqldump的缺点
- 只能单线程执行备份恢复任务,备份恢复速度较慢。
- 为完成一致性备份需要对备份表加锁,容易造成阻塞。
- 会对Innodb Buffer Pool造成污染
备份
恢复
有条件的备份
mysqlpump
mysqlpump的优点
- 语法同mysqldump高度兼容,学习成本低。
- 支持基于库和表的并行备份,可以提高逻辑备份的性能
- 支持使用ZLIB和Lz4算法对备份进行压缩
mysqlpump的缺点
- 基于表进行并行备份,对于大表来说性能较差。
- 5.7.11之前版本不支持一致性并行备份。
- 会对Innodb Buffer Pool造成污染
备份与解压缩
xtrabackup
xtrabackup的优点
- 支持Innodb存储引擎的在线热备份,对Innodb缓冲没有影响。
- 支持并行对数据库的全备和增量备份。
- 备份和恢复效率比逻辑备份高。
xtrabackup的缺点
- 做单表恢复时比较复杂。
- 完整的数据文件拷贝,故备份文件比逻辑备份大。
- 对跨平台和数据库版本的备份恢复支持度不如逻辑备份。
安装xtrabackup
恢复,准备好当前SQL的备份、二进制日志文件
备份工具应用
-
逻辑备份+二进制日志
-
使用xtrabackup工具
使用xtrabackup进行增量备份
>innobackupex --user=root --password=pwd /backups
二进制日志备份
备份方式
- 利用cp命令进行离线备份
- 使用mysqlbinlog命令在线时实备份