一次数据库问题优化

感情迁移 提交于 2019-12-01 21:28:08

  最近连续几天,mysql数据库会运行中假死,记录一下排查过程。

1、在数据库相应缓慢的时候,用client连接上去,执行show processlist 命令,

查看是哪条语句执行缓慢,或者哪些语句执行缓慢。查询结果会列出当前正在执行哪些语句,以及执行了多长时间,当前执行状态等信息。

2、检查缓慢语句设计的表和字段,判断是否表数据量过大,或者查询条件的字段需要加索引。

3、检查是否有存储过程或者函数设计到DDL语句,DDL操作会产生metadatalock,建议业务低峰期操作。

基本上按照上面三条检查排除能解决一大部分的常见问题了。

比如,我们这次是由于日志log表数据量过大,超过800W了。导致很多数据统计相关联查询语句执行缓慢,按照惯例是需要半年把历史数据迁移到历史库去,避免经常查询的表数据过大。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!