大家好,我是马听。
之前,我们节选了一些课程学员在答疑群问过的问题:MySQL实战中遇到的几个问题。
这篇文章,再来出一期。
1 mysqldump、xtrabackup备份恢复800G数据量大概各需要多长时间,大概值就行(不考虑极端的硬件配置)或者大家生产上遇到过的
变更不频繁的,如果是用物理备份工具xtrabackup,就是可以理解复制800g文件,可以在机器上,拷贝一个大文件预估一下。
比如课程里的实战内容,讲MySQL备份的时候,那套数据库数据大小7.1G,压缩之后,1.1G,花了22秒,按这个速度,800G可能就40多分钟吧。
mysqldump就好比把select *全表的数据,拷贝到文件里,可能时间就很长了,并且用逻辑备份做恢复,可能更久。
如果非逻辑备份不可,可以尝试多线程备份工具mydumper。备份和恢复会快很多。
2 平时数据库运维引入AI了吗?
感觉程序员都能用,就是以前问百度谷歌的,现在多数情况问AI就行。
写程序,写脚本,SQL优化,日常的一些报错,都能给出合理的建议。
不过暂时得人工过滤微调啥的。
课程里也有多个地方讲了,怎么用AI来提高DBA的工作效率。
3 位点复制改成GTID复制实验遇到的问题
如下:

中间少了一步:
set global enforce_gtid_consistency=on;
怎么办?
解析:
自己测试,这一步漏掉问题不大。
生产环境位点复制改成GTID复制的话,
这一步不能少,SET global ENFORCE_GTID_CONSISTENCY = ON;
设置了这个之后,只要客户端执行的SQL,违反了gtid一致性,就会直接报错
也是为了避免生产环境有违反GTID一致性的SQL。
当然,位点复制改成GTID复制,具体步骤可以查看:
https://www.imooc.com/learn/1397
第3节(DBA体系课中,复制这一章,是可以免费观看的)。
4 安装了mysql8.0.25后,通过MySQL客户端连接,报错:Authentication plugin 'caching_sha2_password' cannot be loaded
客户端是8.0之前的,就可能有这个报错。
5 GTID为什么有时候分成了多个段,比如1-2:4-6
可能得原因:
a 人为的跳过了;
b 或者主从切换过;
c 还有当设置设置slave-skip-errors=all时。如果有DDL被MySQL跳过了,会导致GTID不一致,可以参考高鹏大佬写的一篇文章:MySQL:一个BUG问题。
好的,这些问题就分享到这里。
如果有其他的见解,欢迎在留言区讨论。
小编的一些付费知识产品:点击跳转。
公众号MySQL干货合集可以:点击跳转。

点击阅读原文跳转到DBA体系课程。




