扫码阅读
手机扫码阅读
TiDB丨 从MySQL迁移至TiDB的常见问题及解决方案
689 2023-09-21
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
文章来源:
神州数码云基地
扫码关注公众号
TiDB神州数码云基地数据库迁移摘要
数据库迁移问题及解法
神州数码云基地将一套业务库从MySQL迁移到TiDB以应对每年双11高流量引起的问题。2022年双11期间,迁移后的系统表现优异。迁移过程中遇到的问题和解决方法如下:
GC设置过长的问题
由于MySQL的DBA将tidb_gc_life_time设置为7天以实现数据闪回,导致TiKV历史版本增多,读取性能下降。MySQL中事务一致性读是通过undo log实现,而TiDB通过保存不同版本数据实现mvcc并定期通过GC清理,因此历史版本过多时会影响性能。
SQL调优方式对比和SQL调优方法
TiDB提供的监控dashboard具备统计功能、top功能、多条件过滤等,有利于SQL调优。迁移至TiDB后可能出现的性能问题主要包括偶发性复杂SQL的连接算子不合理、SQL执行逻辑不佳和部分小bug。解决方法包括绑定执行计划、改写SQL以及搜索github相关issue或提问社区。
热点问题及其排查与解决
分布式TiDB的瓶颈可能是由于数据分布不合理或业务访问集中于少部分数据,导致单机瓶颈。解决方法包括使用dashboard热力图排查热点,使用tiup ctl命令切分热点region,或编写脚本定期执行。大范围热点处理涉及添加索引或与开发讨论添加过滤条件。
写在最后
随着越来越多业务从MySQL迁移到TiDB,分享迁移案例和经验显得尤其重要。作者希望激励更多案例分享,促进交流。
想要了解更多内容?
文章来源:
神州数码云基地
扫码关注公众号
神州数码云基地的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线