web-dev-qa-db-ja.com

mysqlの開始とmysqlのチューニングをクラッシュさせるInnoDBオプション

ESXiプラットフォームで実行されているUbuntu10.10サーバーにinnodbがあります。私は専用の8CPU、32ギガのRAM、およびRAID 5HPに保存されたファイルを持っていますSAN of SAS 10krpmディスク。FASTクエリを期待しています!ただし、select count( 'x')は7,500万行で45秒かかります!そこで、私はこの獣の調整を掘り下げました:

1)私の設定のいくつかは、mysqlが「不明な変数」エラーで爆破する原因になります。これらは:

innodb_file_format = barracuda
innodb_read_io_threads = 6
innodb_write_io_threads = 6
innodb_io_capacity = 1000

2)mysqlをクラッシュさせないが、おそらく最適化されていない残りの設定。

skip_name_resolve
default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_buffer_pool_size = 24G
innodb_log_files_size = 1G
innodb_log_buffer_size = 8M
innodb_flush_method = O_DIRECT
innodb_flush_log_at_trx_comit = 1

key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 32
query_cache_limit = 1M
query_cache_size = 0

これらの設定で推奨する追加の調整はありますか?不足している追加の設定はありますか?

ご支援ありがとうございます!

2
coderego
innodb_file_format = barracuda
innodb_read_io_threads = 6
innodb_write_io_threads = 6
innodb_io_capacity = 1000

これらの設定はMySQL5.5固有です。 MySQL 5.0 /5.1で記述されたデータに対してMySQL5.5を使用している場合は、古いバージョンのMySQLを実行し、すべてをmysqldumpして、データをmysqlに再度リロードする必要があります。バラクーダ形式は、別のInnoDBファイル形式です。以前のバージョンのMySQLおよびInnoDBから移行する必要があります。 しばらく前にこれに何か書いた

ファイル形式を再確認するには、「SHOW VARIABLES LIKE'innodb_file_format ';」を実行します。アンテロープが見えるはずです。


この問題を解決したら、他の変数をこれにクランクアップします

innodb_read_io_threads = 64
innodb_write_io_threads = 64
innodb_io_capacity = 20000

結局のところ、8つのCPUがあります。


MyISAMチューニングオプション
InnoDBチューニングオプション
InnoDB固有のチューニング
InnoDBおよびMyISAMキャッシュ構成予測

1
RolandoMySQLDBA