10bet网址
MySQL 5.6リファレンスマニュアル
下载本手册
PDF(美国高级主任)- 26.8 mb
PDF (A4)- 26.8 mb


B.5.6オプティマaapl . aapl .ザ関連の問題

MySQLはコストベースのオプティマイザを使用して,クエリーを実行する最適な方法を判別しています。多くの場合,MySQLは実行可能な最適なクエリー計画を計算できますが,データに関する情報を十分に取得できず,データについて学習による推測を行う必要がある場合があります。

MySQLで”適切”に処理されなかった場合に,MySQLに指示を送るために使用できるツールを次に示します。

  • 解释ステ,トメントを使用して,MySQLがクエリ,を処理する方法に関する情報を取得します。これを使用するには,キ,ワ,ド解释选择ステ,トメントの前に追加します。

    mysql>解释SELECT * FROM t1, t2 WHERE t1。I = t2.i;

    解释にいては,セクション13.8.2 " explain構文"で詳しく説明しています。

  • 分析表tbl_nameを使用して,スキャンされるテ,ブルのキ,分布を更新します。セクション13.7.2.1 " analyze table構文"を参照してください。

  • スキャンされるテ,ブルに力指数を使用して,テーブルスキャンは該当するインデックスを使用した場合と比較して著しく負荷が高いことをMySQLに通知します。

    SELECT * FROM t1, t2 FORCE INDEX (index_for_column) WHERE t1.col_name=t2.col_name;

    使用索引および忽略指数も役に立ことがあります。セクション13.2.9.3“aapl . aapl .ンデックスヒントの構文”を参照してください。

  • グロ,バルおよびテ,ブルレベルのSTRAIGHT_JOINセクション13.2.9 " select構文"を参照してください。

  • グロ,バルなシステム変数またはスレッド固有のシステム変数をチュ,ニングできます。たとえば,キースキャンでキー検索が1000回を超えて行われることはないと想定するようにオプティマイザに通知するには,——max-seeks-for-key = 1000オプションを指定してmysqldを起動するか,设置max_seeks_for_key = 1000を使用します。セクション5.1.4 "サ,バ,システム変数"を参照してください。