本文共 910 字,大约阅读时间需要 3 分钟。
第一步:观察,至少跑一天,看看环境上慢SQL情况。
第二步:开启慢查询日志,设置阈值,比如超过5秒就是慢SQL,并将它抓取出来。
第三步:explain+慢SQL分析。
第四步:show profile
第五步:DBA进行SQL数据库服务器的参数调优。
默认情况下,MySQL数据库没有开启慢查询日志。需要手动配置开启。
SHOW VARIABLES LIKE '%slow_query_log%';
SET GLOBAL slow_query_log = 1;
SHOW VARIABLES LIKE '%long_query_time%';
SET GLOBAL long_query_time = 1;SHOW VARIABLES LIKE '%long_query_time%';
SELECT * FROM tb_item_04 WHERE id > 1001;#查询时间3.490748s 大于 1s------------------------------------------------------------------------------------------# 看日志文件C:\ProgramData\MySQL\MySQL Server 5.5\data\xxx.log# User@Host: root[root] @ localhost [127.0.0.1]# Query_time: 3.490748 Lock_time: 0.000000 Rows_sent: 2046464 Rows_examined: 2046464SET timestamp=1606835699;select * from tb_item_04 where id > 1001;
SHOW profiles使用
查询最近使用的sql及其耗时。
SELECT * FROM tb_item_04 WHERE id > 1001;SHOW profiles;
SHOW profile cpu,block io FOR QUERY 55;SHOW profile ALL FOR QUERY 55;
转载地址:http://jatmi.baihongyu.com/