2012年3月24日土曜日

MySQLのパフォーマンスチューニングアナライザのスクリプトを使用する

あなたのウェブサイトの速度を上げることで作業している場合、非常に重要な部分は、あなたのデータベースサーバからパフォーマンスを最後の一滴を得ることを確認しています。残念ながら、通常はデータベース管理者ではないことに私たちのほとんどにとっては、これは困難な命題になります。

ご使用のサーバの設定と現在の状態を分析し、あなたが作る必要があることを推奨される変更に関する情報を与えるパフォーマンスチューニングスクリプトの数があります。あなたは、必ずしも提案のすべてに従うことはありませんが、これはとにかく見てみることは価値です。

筆者が使っているスクリプトは、以下の推奨事項について説明:

  • スロークエリログ
  • 最大接続数
  • ワーカースレッド
  • キーバッファ
  • クエリキャッシュ
  • ソートバッファ
  • Joins
  • 一時テーブル
  • テーブル(オープン&定義)キャッシュ
  • テーブルロック
  • テーブルスキャン(read_buffer)
  • InnoDBの状態
  • したら、スクリプトをダウンロードするには、次のコマンドで実行可能にする必要があります。

    chmodのuは+ Xのチューニング- primer.sh

    あなたが通常のユーザーとしてこのスクリプトを実行する場合、それはあなたのパスワードを要求するプロンプトが表示されますので、それに応じてアクセス権を設定することを確認する必要があります。あなたがrootとして実行する場合は、そのインストールされている場合には、Pleskからmysqlのパスワードを迎えに来ます。

    私は多くの提言があったが、同じページに収めるには長すぎたの出力、の多くをカットしました。

    ./tuning-primer.sh

    - MySQLパフォーマンスチューニング入門 -
    - で:マシューモンゴメリー -

    MySQLバージョン4.1.20 i686の

    稼働時間= 5日間10時間46分5秒
    平均。 QPS = 4
    総質問= 2020809
    = 1の接続のスレッド

    サーバは48時間以上にわたって実行されています。
    それは、これらの推奨事項に従うのが安全である

    ----は-----のsnipped

    QUERY CACHE
    クエリキャッシュが有効になっている
    現在のquery_cache_sizeの= 8 M
    現在query_cache_used = 7 M
    現在query_cach_limit = 1 M
    現在のクエリキャッシュ比率= 89.38パーセントを埋める
    しかし、254246クエリはメモリが不足しているため、クエリキャッシュから削除されました
    おそらくあなたは、query_cache_sizeの発生させる必要があります
    MySQLは、サイズのquery_cache_limitより大きいクエリー結果をキャッシュしません。

    ----は-----のsnipped

    私がする必要があるように見える 私のクエリキャッシュを増加させる...私は8MBに設定しますが、それはあまりにも頻繁にキャッシュをクリーニングしている。

    ----は-----のsnipped

    TEMPテーブル
    現在max_heap_table_size = 16 M
    現在tmp_table_size = 32 M
    35170一時表のうち、74%がディスク上に作成された
    効果的なインメモリのtmp_table_sizeはmax_heap_table_sizeに制限されています。
    おそらくあなたは、あなたのtmp_table_sizeおよび/またはmax_heap_table_sizeを増やす必要があります
    ディスクベースのテンポラリテーブルの数を減らすために
    注意してください! BLOBとTEXTカラムは、メモリテーブルで許可されていません。
    あなたは、これらの値は影響を与えない可能性が高めるこれらの列を使用している場合
    ディスクの一時テーブル上での比率。

    ----は-----のsnipped

    この種の情報はあなたのウェブサイトのパフォーマンスを調整しようとしている時だけ貴重なものです。

    MySQLのパフォーマンスチューニング入門スクリプトをダウンロード

    0 件のコメント:

    コメントを投稿