sql >> データベース >  >> RDS >> Mysql

キーキャッシュによる修復を回避する方法は?

    「並べ替えによる修復」では、filesortルーチンを使用します。これにより、tmpdirに(通常は)いくつかの一時ファイルが作成されます。

    tmpdirに十分なスペースがない場合は、「キーキャッシュによる修復」に戻ります。これは非常に遅く、最適なインデックスを作成しないため、非常に悪いです。

    他にもいくつかの条件がありますが、私はそれらを特定していません。

    filesort()に必要なtmpdirのサイズを計算するのは簡単ではありません。ファイルソートバッファに保存されるフォーマットデータはMYDファイルと同じではなく、通常はより多くのスペースを使用します。

    したがって、tmpdirが小さな/ tmp(またはtmpfs)を指している場合は、それをより大きな/ var/tmpに変更することをお勧めします-存在する場合。



    1. OracleODP.netマネージドドライバーとアンマネージドドライバー

    2. clock_timestamp()がPostgreSQLでどのように機能するか

    3. SQLServerでBegin/End BlocksとGoキーワードを使用する必要があるのはいつですか?

    4. クエリ結果を事前定義された順序で返す