web-dev-qa-db-ja.com

MySQLのWAMPサーバーパフォーマンスチューニング

Drupal約2000ページが実行されているサイト WAMPサーバー があります。ページには画像とFlashビデオが埋め込まれています。そのため、時間がかかります通常の設定でロードします。

200〜300人近くのユーザーがシステムを同時に使用することが予想されます(数は後で増加すると予想されます)。

開発サーバー(当社のイントラネット上)には16 GBのRAMがあり、Windows7-64ビットOSを実行しています。 wamp/bin/mysql/mysql5.5.16/にはファイルがあることがわかります

  1. my.ini
  2. my-huge.ini
  3. my-innodb-heavy-4G.ini

私はそれらの両方を調べましたが、それらのそれぞれの目的が何であり、どれが現在私のWAMPサーバーによって使用されているのかわかりません。また、my-huge.inimy-innodb-heavy-4G.iniの違いを知る必要がありました。また、検索にインデックスを付けるようにApache SOLRを構成しました(これが適切かどうかはわかりません)。

PS:Drupalは、ページを(画像やビデオへのリンクと共に)データベースに保存し、画像やその他のメディアはサイトルートの下のフォルダに保存されます。

7
Ajit S

違いは、mysqldが処理するために要求される予想容量に関係しています

my_huge.ini

  • max_connectionsが設定されていません
  • innodb設定がコメント化されている
  • 値プリセット
    • sort_buffer_size = 2M
    • read_buffer_size = 2M
    • read_rnd_buffer_size = 8M
    • myisam_sort_buffer_size = 64M

my-innodb-heavy-4G.ini

  • max_connectionsが100に設定されている
  • innodb設定が有効になっている
  • 値プリセット
    • max_allowed_pa​​cket = 16M
    • binlog_cache_size = 1M
    • max_heap_table_size = 64M
    • read_buffer_size = 2M
    • read_rnd_buffer_size = 16M
    • sort_buffer_size = 8M
    • join_buffer_size = 8M
    • thread_cache_size = 8
    • thread_concurrency = 8
    • query_cache_size = 64M
    • query_cache_limit = 2M

指定しない場合、デフォルト値が使用されます。どちらを使用する場合でも、それをmy.iniにコピーし、mysqldを再起動して有効にする必要があります。

  • My-huge.iniを使用する場合は、mysqldをシャットダウンし、my-innodb-heavy-4G.iniをmy.iniにコピーして、mysqldを起動する必要があります。
  • My-innodb-heavy-4G.iniを使用する場合は、mysqldをシャットダウンし、innodbログファイル(ib_logfile0、ib_logfile1)を削除して、my-innodb-heavy-4G.iniをmy.iniにコピーしてから、mysqldを起動する必要があります。

DB接続の数は増えると予想されているため、 max_connections をより高い値に上げる必要がありますが、 RAMの使用。 それをバランスさせる最良の方法は、mysqltuner.pl のような診断プログラムを実行し、接続ごとおよびインスタンス。

MySQLをWAMP環境で実行しているので、Windows、Apache、およびRAM(またはPerlまたはPython)にPHP(またはPerlまたはPython) RAMの観点から。 (IISではなくApacheを使用していることを嬉しく思います。そうでない場合、これはWIMP環境になります!!!)

6
RolandoMySQLDBA