下文内容主要给大家带来mysql数据库完整备份和增量备份脚本讲义,这里所讲到的知识,与书籍略有不同,都是亿速云专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。
mysql数据库自动化完整备份和增量备份
增量备份,为了增强mysql数据库的安全性和完整性,需要对数据进行备份。这里我们采用的策略是每周五下午5:30进行一次完整备份;每天的6:00、12:10、17:00进行增量备份。
2.增量备份脚本如下:(将生成的二进制文件内容读取出来并导入一个新的sql文件中)
增量备份的前提时,要在mysql的配置文件里打开二进制功能:
log-bin=mysql
3.将这两个加进计划任务里
4.执行结果:
数据库备份全部文件存放路径:/backup/mysqldb_full
数据库增量备份存放路径:/backup/mysqldb_add
完整备份的文件: (路径在/backup/mysqldb-full/20150525,以每天的日期作为文件名,*full.sql为完整备份文件,*add.sql为增量备份文件)
打包的备份文件:(路径在 /backup/mysql_backup)
生成的二进制文件:
5.数据恢复:
(1)恢复完整备份方式;
mysql -p < full.sql
(2) 恢复增量备份
mysqladmin bin-log.000001 | mysql -uroot -p
基于时间点的恢复:
如果误删了一张表,使用完全恢复是没有用的,因为日志里同样也保留着删除的sql语句,所以我们需要恢复到误操作前的状态,然后跳过误操作的语句。
假如我在20:00误删了一张表,可以使用以下语句恢复:
mysqlbinlog --stop-date='2012-06-05 19:59:59' /var/log/mysql-bin.000001 | mysql -uroot -p
跳过误删除的时间点,再执行:
mysqlbinlog --start-date='2012-06-05 20:01:00' /var/log/mysql-bin.000001 | mysql -uroot -p
基于位置点的恢复:
基于位置点的恢复可以得到更为精确的数据。
如上图,drop table test这条语句的起始位置是889107,终止位置是889189,那么我们可以使用于以下语句进行恢复:
mysqlbinlog --stop-position='889107' /var/lib/mysql/mysql-bin.000001|mysql -uroot -p mysqlbinlog --start-position='889189' /var/lib/mysql/mysql-bin.000001|mysql -uroot -p
对于以上关于mysql数据库完整备份和增量备份脚本讲义,如果大家还有更多需要了解的可以持续关注我们亿速云的行业推新,如需获取专业解答,可在官网联系售前售后的,希望该文章可给大家带来一定的知识更新。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。