オープンソースMySQLパフォーマンスツール

オープンソースMySQLパフォーマンスツール

SQLクエリを最適化するためのオープンソースMySQLパフォーマンスツールはありますか?

答え1

mysqlコマンドを分析するには、次のものを使用できます。SHOW PROFILE

mysql> SET profiling = 1;
mysql> [type your query here]
mysql> SHOW PROFILE;

目的の結果を得るためにmysqlが実行するアクションに関する詳細情報を取得するにはEXPLAIN

mysql> EXPLAIN [type your query here]

最適化のための良い出発点は、インデックスを使用してメモリ使用量を増やすことですmy.cnf(デフォルトパラメータは非常に低い可能性があります)。テーブルから多くのデータを削除する場合OPTIMIZE TABLEにも役立ちます。

OPTIMIZE TABLE table;

それにもかかわらず、SHOW PROFILEの出力を使用して、どの部分が多くの時間を必要とし、最適化する価値があるかを決定する必要があります。

最適化時にクエリキャッシュの切り替えに注意してください。そうでなければ、あなたは自分自身をだますようになります。

答え2

まず、どんな最適化とキャッシュを使用しても物理ハードウェアを置き換えることはできません。最適な最適化の形式は、サーバーにメモリを追加してから最適化手順を実行することです。

MySQLの最適化は継続的なプロセスです。毎週MySQLを調整する必要があります。これにより、MySQLの設定を調整できます。

5年前にこの質問を受けたとき、私たちはTrusty Tahrにいましたが、これが私が最も覚えているものです。その中に編集できるファイルがありmy.cnf、Xenialですばやく巻いて開くと編集可能な文書が/etc/mysqlありませんでした。my.cnf。今リンク/etc/alternatives/my.cnf

Xenial(Ubuntu 16)を使用して編集したいファイルは別のディレクトリにあります。つまり、/etc/mysql/mysql.conf.dこの投稿を見ている人のために編集したいファイルはですmysqld.cnf

ファイルをバックアップしてホームディレクトリに戻り、それを使用してmysqlcheckデータベースを最適化します。

関連情報