在我们安装的 MySQL 5.7 中,表 performance_schema.events_statements_summary_by_digest 记录了所有使用相同 DIGEST/DIGEST_TEXT(实际上是 View 的 DIGEST)下的 View 的不同 SQL SELECT 语句。
我搜索了很多但找不到与该问题相关的任何内容。任何人都知道性能模式中是否有一些配置/解决方法来单独记录语句?
示例:
考虑以下这两个语句:
select * from my_view where id = 1;
select * from my_view where id = 1 and value_a = 1;
它们都记录在相同的 DIGEST/DIGEST_TEXT 下:
摘要:49eb6a7a1af263407e1f85cd3ca8f515
DIGEST_TEXT: ( SELECT teste
. my_table
. id
AS id
, teste
. my_table
. value_a
AS value_a
, teste
. my_table
. value_b
AS value_b
, teste
. my_table
. value_c
AS value_c
FROM teste
. my_table
)
DIGEST_TEXT 是创建 View 中使用的文本。
无论创建 View (MERGE/TEMPTABLE) 中使用的算法如何,结果都是相同的。
最佳答案
不幸的是,这是预期的行为。没有解释原因。
但它可以作为功能请求添加。
这是主题:
https://bugs.mysql.com/bug.php?id=89559
关于MySQL Performance Schema 语句 DIGEST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48465193/