如何查看sql执行sql语句

SQL语句摘要可以用在MySQL的各个方面,比如性能字典中的语句分析,查询重写插件规则重写等等。

接下来依次看这两个方面的句子总结的使用。

1.性能词典

mysql & gt调用sys . PS _ setup _ enable _ consumer(' statements ');

+ - +

|摘要|

+ - +

|启用了4个消费者|

+ - +

65438+集合中的0行(0.00秒)

查询正常,0行受影响(0.00秒)

打开后,多次执行前面的SQL。

之后就方便从sys库中分析这类语句的执行情况了,包括执行次数、执行时间、扫描的记录数、锁定时间、是否使用排序等等。

2.查询重写插件

比如防止通过字段r1删除表p1,可以使用查询重写插件直接在MySQL语句分析层进行转换,然后需要使用汇总函数statement_digest_text。

假设表p1的字段id值都是正的。

从p1中删除,其中id = 1000;

把它改写成,

从p1中删除,其中id =-1;

使用函数statement_digest_text定制该SQL的重写规则。

mysql & gt插入到query _ rewrite . rewrite _ rules(pattern,replacement,pattern _ database)-& gt;值(-& gt;statement_digest_text('从p1中删除,其中id = 1000 '),-& gt;statement _ digest _ text(' delete from p 1,其中id = -1 '),-& gt;ytt '-& gt;);查询正常,1行受影响(0.01秒)

查询重写语句的影响:

mysql & gt从p1中删除,其中id = 20000查询正常,0行受影响,1警告(0.00秒)

mysql & gt显示警告\ G * * * * * * * * * * * * * * * * * * * * * * * * * * 1。行*************************级别:注释代码:1105消息:查询“从p1删除,其中id = 20000”被查询重写插件重写为“从` p1删除,其中` id` = - 20000 ”,在set (0.00 sec)mysql中的行1 & gt;从p1中选择count(*);+-+| count(*)|+-+| 9000001 |+-+1集合中的行(1.59秒)

摘要

MySQL 8.0中新增的语句汇总功能可以轻松分析SQL语句执行的方方面面,比之前分析类似场景简单很多。