1.sql语句的执行计划,可以通过explain查看,有三种格式,traditional、json和tree;
默认是传统格式,可以通过explain format=tree/json +sql来选择其他格式
如
explain format=tree select count(*) from customer inner join payment using(customer_id) where store_id = 1\G;
2.执行计划是由优化器进行选择的,通过设置优化器跟踪可以了解选择执行路径的原因
使用优化器跟踪分为四步,
通常可以通过workbench,mysql enterprise monitor等数据库工具找出消耗资源最多的sql语句,当然也可以sys视图来找出需要优化的sql;
最需要优化的sql并不是指的单次执行时间最长的sql语句,而应该是总计执行时间最长的sql语句,它等于执行次数乘以单次执行时间。
sys数据库视图是建立在performance_schema数据库上的,在sys.statement_analysis中找出总计执行时间最长的sql,同样也可以在performance_schema.events_statements_summary_by_digest查找
如
call sys.ps_truncate_all_tables(false);
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。