2

问答

1. 多表join 如何优化?

答:最多两张表join原则,主键或唯一键关联,通过执行计划。

2. 请问一下,mgr里的事务丢失是什么情况?

答:5.7.25以下低版本,在通过mgr确认和认证之后,底层回放的时候丢失。

3. 老师mysql怎么评估支撑的连接数?

答:show engine innodb status 里有等在信息,信号量的一些统计,可以参考,建议并发不要超过1000。

4. 8.0现在生产用得多吗?

答:还是比较多的。5.7版本第一个阶段维护到10月份到期,后面支持会越来越少。

5. 8.0生产环境目前推荐哪个版本?

答:8.0.18版本开始。

6. 增强半同步参数有没有什么架构建议?

答:AFTER_SYNC和timeout设置。

7. 业务反应不想用VIP漂的形式了高可用形式了,有没有其他的解决方案。

答:域名方式 或则 中间件(proxysql推荐,myql router,Maxscale)。

8. MGR主要应用场景?

答:硬件方面:单机房 或则 跨机房 网络条件好 。数据量建议不要超过500G, 一致性要求高。

9. mysql innodb/ndb cluster 实际生产中用得多么?

答:mgr用的还是可以的,基本一些大厂都在用 / ndb使用场景少。

10. 生产环境一般用什么存储引擎?

答:铁定mysql innodb引擎。

11. 如何尽可能一次性故障信息收集要收集些什么?假如现场人员对现象把握不准,并避免多次交互?

答:收集信息可以 监控指标图,系统 message 日志,mysql参数,慢日志,  binglog,innodb status。

12. gtid是不是有些限制?5.6版本的做主备的时候,推荐启用gtid吗?

答:限制有的,一些语句不支持,可以自行网上查询一下。gtid 建议还是5.7版本使用。

13. MySQL什么场景下比pg有优势?

答:两个数据库角度不一样,底层实现也不一样;开发中的差异性 等等;MySQL最大的优势就是社区解决方案,周边资源多 和 稳定性 等等。

14. gtid是不是有些限制?5.6版本的做mha的时候,推荐启用gtid吗?

答:限制有的,一些语句不支持,可以自行网上查询一下;gtid 建议还是5.7版本使用。

15. 老师  mysql8.0.18 数据割接时 批量导入数据事务超过MGR 组复制限制时 primary节点就无法与其他通信了,会发生primary切换  xcom 底层是如何传输事务的?

答:xom通过Batching和Pipelining方式进行消息传输的。以下连个参数都可以有 效控制堵塞通信的。group_replication_transaction_size_limit,

group_replication_message_cache_size

16. 双主+VIP架构,数据不一致怎么修复?

答:pt-table-checksum可是使用,但注意有可能破坏主从。

17. MongoDB会不会部分替代MySQL?

答:这个可能性非常渺茫,只能说MySQL能替代mongodb可能性,8.0版本有很多类似的分析的功能出现,json支持也在完善中。

18. 高可用架构选择哪种比较好?自增字段。

答:高可用 按照业务情况选择,满足业务,选合适的,自己最熟悉的。心里没底 就主从+增强半同步既可以

19. 老师,你的意思是说MySQL不建议单库超过TB级别?

答:超过TB级别,要看怎样使用:比如分区表,高可用主从异步。或则定期迁移走数据。要做好归档部分。

20. MGR组内通信使用的是广播、组播还是点播啊?

答:mgr xcom协议算组播方式,小组成员之间必须始终保持双向通信。

23. 并发参数那个调配方法如何尝试?

答:4个参数innodb_thread_concurrency. innodb_adaptive_max_sleep_delay,innodb_thread_sleep_delay,innodb_concurrency_tickets,可以通过官场最高性能指标的情况进行设置。

24. 升级的话 MYSQL8 哪个版本稳定?

答:8.0.18版本开始比较稳定,升级可以看下墨天轮(www.modb.pro)上有专门8.0版本升级方式。