7

我正在运行 MySQL 5.5.11 版本,查询 INFORMATION_SCHEMA.key_column_usage 表时的性能非常糟糕。

我有一个简单的选择请求:

SELECT REFERENCED_TABLE_NAME
       , TABLE_NAME AS TableName
       , COLUMN_NAME AS ColumnName
       , CONSTRAINT_SCHEMA AS Db 
FROM INFORMATION_SCHEMA.key_column_usage 

返回 400 行平均需要 8 秒。这是一个已知问题吗?如果是这样,有没有办法提高性能(也许是补丁?)。

4

2 回答 2

10

通过使用那里给出的提示: http ://www.mysqlperformanceblog.com/2011/12/23/solving-information_schema-slowness/

对于同一个查询,我从几秒切换到了一百毫秒。这个设置,拯救了我的一天:

innodb_stats_on_metadata=0
于 2013-09-21T08:52:28.267 回答
3

我在这里发现了一篇有趣的文章:http: //dev.mysql.com/doc/refman/5.5/en/information-schema-optimization.html

我将 WHERE TABLE_SCHEMA = 'myTable' 添加到我的查询中,我得到了巨大的性能改进,从 8 秒提高到 0.2!

于 2011-09-06T15:01:37.303 回答