mysql 增量备份

在使用增量备份的时候,首先了解下全备份,或者说要先做全备份,再配合增量备份,这样才是一个完整的备份解决方案。

全备份:点击打开链接

增量备份配置:

1、首先找到MySQL安装目录下my.ini或者my.conf文件。

如果不清楚安装目录的话,可以进入 mysql> select @@basedir as basePath from dual;

dual是亚元表,数据库中默认的一张空表。



2、在mysqld下面添加二进制备份路径。

    log-bin=E:/backup/mysql_backup



3、重启mysql服务,在E盘的backup目录下多了2个文件



4、打开index文件,内容是日志文件的路径。日志文件可以有多个,命名规则是log-bin中设置目录的后缀名,也就是mysql_backup后面加上6位数(从000001一直递增),

我们需要关注的是000001后缀的文件。我们可以通过mysql安装目录下bin文件中的mysqlbinlog.exe打开。


在cmd中,切换到mysqlbinlog.exe所在目录,输入需要打开的文件,如下:


注意,新增数据库和删除数据库都会记录在此类文件中。(还有,任何查询sql都不会记录的)。


因为每次操作的时间和“位置”都会被记录下来。所以要想还原数据有两种途径通过“时间”或“位置”。

通过时间还原:

--start-datetime="还原数据的起始时间"

--stop-datetime="还原数据的结束时间"

mysqlbinlog --start-datetime=“时间” 日志文件路径 | mysql -u用户 -p 从规定的起始时间还原到现在

mysqlbinlog --stop-datetime=“时间” 日志文件路径 | mysql -u用户 -p 从最开始还原到规定的结束时间

mysqlbinlog --start-datetime=“时间” --stop-datetime=“时间” 日志文件路径 | mysql -u用户 -p 从规定的起始时间还原到规定的结束时间

通过位置还原:

--start-position="还原数据的起始位置"

--stop-position="还原数据的结束位置"

mysqlbinlog --start-position=“位置” 日志文件路径 | mysql -u用户 -p 从规定的起始位置还原到现在

mysqlbinlog --stop-position=“位置” 日志文件路径 | mysql -u用户 -p 从最开始还原到规定的结束位置

mysqlbinlog --start-position=“位置” --stop-position=“位置” 日志文件路径 | mysql -u用户 -p 从规定的起始位置还原到规定的结束位置


再进行dml操作时,都记录下来,运用上面语句就可以还原到指定位置。

注意,在做增量备份时候,需要先做一个全备份,这样就可以保证安全性。再此,数据量庞大的情况,就需要开启定时删除增量备份文件,而且MySQL默认expire_logs_days=0,是不会自动删除日志文件的。如果日志文件过大,且业务需要,只能手动归档压缩备份。


对于不重要的日志,可以设置 expire_logs_days 的值,且需要注意只支持99天。

比如,每周做一个全备份,那么我们就可以一周做一次增量备份删除了。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值