TOPサーバ構築・運用> 効果を定量的に判断しよう




MySQLチューニング
はじめてのMySQLチューニング

第1回:定量的な情報収集のススメ

著者:アールワークス  田中 靖之   2007/7/2
1   2  3  次のページ
効果を定量的に判断しよう

   MySQLサーバに限らず、大量のアクセスを処理するデータベースやアプリケーションサーバ群に対して、それぞれの環境に合わせたチューニングを行うことは企業システムにおいて必須の項目です。しかし「チューニングすべきパラメータとその最適値をどのように決定すればよいのか」、また「実際にチューニングを施すことによってどの程度効果があったのか」を把握することは意外に難しいものです。

   ですが、敢えていえば答えは明瞭で、「定量的な情報収集と分析」の他にないでしょう。あらかじめ情報を収集しておけば、チューニング前後でのデータを比較することによってどのような変化が起きたのかを知ることができます。

   本連載では、まずはMySQLサーバにおいて収集すべき情報を提示し、その後、それらを利用した基本的なパラメータについてのチューニング方針を紹介します。

   また、今回はOSにCentOS 5.0、データベースにMySQL 5.0.41という環境を使用していますが、できる限りバージョンに依存しないチューニング項目をメインに扱っていきますので、様々な環境で試せることを補足しておきます。

MySQLサーバで収集すべき情報

   まずは、冒頭で述べたようにサーバの現状を把握するための情報収集が必要です。基本的な情報としてCPU(ロードアベレージ)、メモリ、ハードディスクの利用状況などのサーバへの負荷情報を収集することは当然です。さらにMySQLサーバにおいて注視すべき情報はshow statusの実行結果ではないでしょうか。

   まずはサーバへログインし、MySQLコマンドラインへ移行します。

$ mysql -u root -p
Enter password:
mysql>

   -uはmysqlユーザを指定し、-pはパスワード認証を使用することをあらわすオプションです。上記のコマンドは「rootというmysqlユーザでパスワード認証を使用してmysqlサーバへ接続する」ということになります。

   次に、show statusコマンドを実行してみてください。

show statusコマンドの情報
図1:show statusコマンドの情報
(画像をクリックすると別ウィンドウに拡大図を表示します)

   いきなり沢山の情報が表示されて戸惑ってしまうかもしれませんが、これらはMySQLの利用傾向を把握するためには非常に重要で、示唆に富んだ情報が提示されています。

1   2  3  次のページ


株式会社アールワークス 田中 靖之
著者プロフィール
株式会社アールワークス  田中 靖之
ネットワークインテグレーション部
主にWebサービス系のシステム運用監視を担当するネットワークインテグレーション部に所属。システム改善やチューニングを顧客と共に考える姿勢を大事にしている。


この記事の評価をお聞かせください
ボタンをクリックしますとウインドウが開きます。

INDEX
第1回:定量的な情報収集のススメ
効果を定量的に判断しよう
  show status実行結果の収集
  MySQLのチューニングパラメータ
はじめてのMySQLチューニング
第1回 定量的な情報収集のススメ
第2回 負荷によるベンチマークを試す
第3回 max_connectionsとthread_cacheのチューニングを行う
第4回 ベンチマークツールを使った負荷テスト
第5回 key_buffer_sizeの違いによるパフォーマンス比較
第6回 query_cache_sizeの違いによるパフォーマンス比較