2017-04-09 35 views
0

Cakephp 3アプリケーションを実行し、mysqlサーバのバージョン:5.6.32-78.1-log - Perconaサーバ(GPL)、リリース78.1、MySQLのリビジョン8bb53b6、テーブルINFORMATION_SCHEMA.key_column_usageを照会するのは本当に最悪です。INFORMATION_SCHEMA.key_column_usageクエリの読み込みに28秒かかります

SELECT 
    * 
FROM 
    information_schema.key_column_usage AS kcu 
    INNER JOIN 
     information_schema.referential_constraints AS rc 
     ON (kcu.CONSTRAINT_NAME = rc.CONSTRAINT_NAME 
     AND kcu.CONSTRAINT_SCHEMA = rc.CONSTRAINT_SCHEMA) 
WHERE 
    kcu.TABLE_SCHEMA = 'DBNAME' 
    AND kcu.TABLE_NAME = 'TABLENAME' 
    AND rc.TABLE_NAME = 'TABLENAME' 

平均して28秒で0行が返されます。

私はまだほとんどすべての記事が、運を言及しました。 5.6よりも大きいmysqlバージョン以来、私はinnodb_stats_on_metadataがOFFであることを確認しました、あなたを助けてください。私は非常

答えて

0

は、CakePHPによって生成されたこの文..ですいただければ幸いですか!どうして?彼らはもっと良い方法を見つけることができませんか?

information_schemaは不十分(そのデータ辞書との)バージョン8.0まで実装されています。 DBNAME

どのように多くのテーブル?テーブルが多いほど、時間がかかります。

あなたは、同じクエリをもう一度実行した場合、どのくらいの速それは動作しますか?

ありがとうございます。このクエリが特に遅くなる設定があります。あなたはどれくらいのRAMを持っていますか? SHOW VARIABLES;SHOW GLOBAL STATUS;の値は何ですか?

+0

はあまり表にはありませんでしたが、私はDebugkit SQLで見てきたinformationm_schemaクエリをロードするために30秒を取っていると私は以来でそのクエリを実行するかどうそれはどんな違いを作るdoesntのことを意味0行を返すされていることをログすべてのページが行0だった。私がクエリを実行していた2回目はキャッシュされていて、すぐにロードされていましたが、30秒後に再びメタデータキャッシュとall.uのために時間がかかりました私のアプリケーションはすごく速いです.. – user2555748

関連する問題