暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

触目惊心的Drop Database恢复

MySQLBeginner 2021-04-15
2283

传送门: https://ke.qq.com/course/340749

下半部分分享时间: 2018年10月23日 晚上8:30




上周知数堂周四公开课中,通过实际案例演示了drop database的恢复。 但过程实在惊险,如果在生产中真实发生这样的事情,用这样的方法恢复, 老板一定会说:兄弟,你停下来吧,咱们不要了,这TMD的太吓人了!

在分享中给大家讲解以下几个问题:

  1. binlog中position位置没拿捏准,可能导致最后一个事务丢失

  2. 部分场景,有全备+binlog也无法恢复到一致性

  3. mysqldump正确的备份方法

  4. xtrabackup备份apply-log后binlog位置不一致情况选择

  5. 触目惊心的利用mysqlbinlog恢复日志相关的报错

    • ASCII '\0' appeared in the statement, but this is not allowed unless option --binary-mode is enabled and mysql is run in non-interactive mode. Set --binary-mode to 1 if ASCII '\0' is expected. Query: '?-

    • ERROR 1062 (23000): Duplicate entry 'XXXXXXX' for key 'PRIMARY'

    • mysql has gone away

    在各种报错中,把数据恢复出来,而且这种恢复出来,如果没GTID很难判断出是不是恢复的正确。

因为时间的关系,上面的分享并不全面。里面还有一些小的问题,也没讲解,也请大家谅解。更详细更稳的方法,在知数堂课程中会有讲解。

数据恢复的道路是艰难的,有时也是孤独的,需要耐力,坚持中前行。同时更需要细致及正确的证明方法,千万别走错道。

(拍于福州森林公园2018/10/20)


问上天:drop database 恢复真的这么难吗?

难道数据库恢复就是这么可怕吗?不是的。MySQL发展这么多年了,各大云上MySQL使用方案也比较完善了。 基本上主流的云都可以提供MySQL基于时间点的恢复,他们是怎么做到的,我们是不是能进行学习?

在本周二的分享中我们将借助现成的产品分析别人如何实现,再来思考一下如何更有效的进阶方法:

  • 首先,剖析一下CDB的快速闪回实现原理。

  • 再次,手工把binlog转化为relay-log利用sql-thread恢复

  • sql_thread恢复中的tips教学

如果你还在为mysqlbinlog应用binlog报错而担惊受怕,如果你想要学习快速实现MySQL增量恢复,如果你想了解恢复出来的数据怎么快速迁移到线上环境且不会出现报错,如果你想学会drop table后的正确姿势,本周知数堂的公开课你一定不要错过!

数据库恢复可以说是DBA工作中的一个重要技能,细节也比较多,但一个公开课因时间关系,也不能一一展开,如果你学习完,在练习中出现问题,请联系我们助教,报名知数堂MySQL课程,提升工作技能,开车更稳。



知数堂MySQL课时第14期开课了,第14期大量的更新了MySQL 8.0的内容,MySQL 8.0也是未来MySQL DBA工作的一个十年。早日更新知识,更早的受益。

公开课地址:

https://ke.qq.com/course/340749  

或是点击原文传送。



文章转载自MySQLBeginner,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论