一.定位执行慢的sql,如2秒内没执行完的抽取出来
show engines;
查看慢查询时间
show variables like ‘slow%‘;
查看设置多久是慢查询
show variables like ‘long%‘;
修改慢查询时间
set long_query_time=1;
打开慢查询记录日志
set global slow_query_log=‘ON‘;
查看哪些线程正在运行
show full processlist
查看最大连接数
show variables like ‘%max_connections%‘;
当前连接数
show status like ‘Threads_connected%‘;
二.解决
1.首先从自身sql入手,把sql放入navicat执行一次,看看需要多久,sql军规是否遵守,*,in等是否出现
2.最大连接数是否不满足当前连接数,考虑扩大?
3.索引优化,常用字段做索引,而且txt等数据类型不要做索引
4.服务器硬件升级
原文地址:https://www.cnblogs.com/tongcc/p/11283005.html
时间: 2024-10-09 00:49:57