1.4.2. MySQLチューナー
MySQL Tuner は、実行中の MySQL インスタンスに接続し、ワークロードに最適な構成方法を提案する便利なツールです。 サーバーの実行時間が長くなるほど、mysqltuner はより適切なアドバイスを提供できます。 運用環境では、ツールを実行する前に少なくとも 24 時間待つことを検討してください。 install mysqltuner は Ubuntu リポジトリから入手できます。
sudo apt install mysqltuner
インストールしたら、実行します。
mysqltuner
そして最終報告を待ちます。 上部のセクションにはデータベース サーバーに関する一般情報が表示され、下部のセクションには my.cnf 内で変更するためのチューニングの提案が表示されます。 これらのほとんどは、再起動せずにサーバー上でライブで変更できます。運用環境で変更する関連変数については、MySQL の公式ドキュメント (「リソース」セクションのリンク) を参照してください。 以下は、実稼働データベースからのレポート例の一部であり、クエリ キャッシュの量を増やすことで何らかの利点がある可能性があることを示しています。
-------- 推奨事項 -------------------------------------- ------------
一般的な推奨事項:
OPTIMIZE TABLE を実行してテーブルをデフラグし、パフォーマンスを向上させます。 table_cache を徐々に増やして、ファイル記述子の制限を回避します。
調整する変数: key_buffer_size (> 1.4G) query_cache_size (> 32M) table_cache (> 64)
innodb_buffer_pool_size (>= 22G)
データベースのチューニングに関する最後のコメント: 特定の設定が最適であるとは大まかに言えますが、パフォーマンスはアプリケーションごとに異なる可能性があります。 たとえば、Wordpress に最適なものでも、Drupal、Joomla、または独自のアプリケーションには最適ではない可能性があります。 パフォーマンスは、クエリの種類、インデックスの使用、データベース設計の効率などによって決まります。 データベースを使用しているアプリケーションに基づいて、データベース チューニングのヒントを探すのに時間を費やすと役立つ場合があります。 一定の点を超えると、どのような調整を行ってもわずかな改善にしかならないため、アプリケーションを改善するか、より強力なハードウェアを使用するかスレーブ サーバーを追加することによってデータベース環境をスケールアップすることを検討する方が賢明です。