十、linux-mysql下的mysql数据库增量恢复

时间:2021-09-07 05:51:51

1.全量备份

   全量数据就是数据库中所有的数据,全量备份就是把数据库中所有的数据进行备份。

  备份所有库:

   mysqldump -uroot -ppoldboy -S /data/3306/mysql.sock -F -B -A|gzip >/server/backup/mysqlbak_$(date %F).sql.gz

   备份一个库:

   mysqldump -uroot -ppoldboy -S /data/3306/mysql.sock -F -B  |gzip >/server/backup/mysqlbak_$(date %F).sql.gz

2.增量备份

   增量数据是从上次全量备份之后,更新的新数据。对于mysql来说,binlog日志就是msyql的增量数据。

3.企业场景,增量或者全量备份

   1)中小公司,全量一般是每天一次,业务流量低谷执行全备,备份时会锁表。

   2)单台数据库,如何增量。用rsync(配合定时任务频率大点或者inotify,主从复制)把所有binlog备份到远程服务器,尽量做主从复制。

   3)大公司周备,每周六00点一次全量,下周日-下周六00点前都是增量。

     优点:节省备份时间,减少备份压力。

     缺点:增量的binlog文件副本太多,还原会很麻烦。

   4)一主多从,会有一个从库做备份,延迟同步

        1.迁移或者升级数据库时

        2.增加从库

        3.人为的DDL,DML语句,主从库没办法,所有库都会执行,此时需要备份

        4.跨机房灾备,需要备份到异地

一般由人为或者程序误操作导致的变化,需要增量恢复,因为其他从库都进行了误操作。