MySQLメモリ設定を変更しました。設定項目は抜粋になります。備忘録として記載しておきます。なお、ストレージエンジンはMyISAMを使っています。
1.設定変更値
今回 /etc/my.cnf で設定変更(設定追加)を考えている項目は以下になります。
- 適当に抜粋した設定項目ですので、今後の項目追加や値の変更などは十分あり得ます。設定項目についてはあまり参考になさらないでください。
[mysqld] key_buffer = 32M thread_cache_size = 16 key_buffer_size = 32M sort_buffer_size = 16M read_buffer = 2M query_cache_size = 16M
これらの値は明示的に設定していなかった為、MySQLのデフォルト値が設定されている事になります。
2.設定変更前の値
/etc/my.cnf を変更する前に、MySQLのデフォルト値を参照しておきます。
mysql> show variables like '%key_buffer_%'; +-----------------+---------+ | Variable_name | Value | +-----------------+---------+ | key_buffer_size | 8388608 | +-----------------+---------+ 1 row in set (0.00 sec) mysql> show variables like '%thread_cache_size%'; +-------------------+-------+ | Variable_name | Value | +-------------------+-------+ | thread_cache_size | 0 | +-------------------+-------+ 1 row in set (0.00 sec) mysql> show variables like 'key_buffer_size'; +-----------------+---------+ | Variable_name | Value | +-----------------+---------+ | key_buffer_size | 8388608 | +-----------------+---------+ 1 row in set (0.00 sec) mysql> show variables like 'sort_buffer_size'; +------------------+---------+ | Variable_name | Value | +------------------+---------+ | sort_buffer_size | 2097152 | +------------------+---------+ 1 row in set (0.00 sec) mysql> show variables like '%read_buffer%'; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | read_buffer_size | 131072 | +------------------+--------+ 1 row in set (0.00 sec) mysql> show variables like '%query_cache_size%'; +------------------------------+---------+ | Variable_name | Value | +------------------------------+---------+ | query_cache_size | 0 | +------------------------------+---------+ 1 rows in set (0.00 sec) mysql>
このデータをコピーしておき、/etc/my.cnf 設定変更後に設定が反映されているかどうかを比較する事にします。
/etc/my.cnf 設定を変更した後に、MySQLを再起動しました。(2013/03/17(日)18:30に実施)
3.設定変更後の値
以下が、/etc/my.cnf を変更し、MySQLを再起動した後の値です。
mysql> show variables like '%key_buffer%'; +-----------------+----------+ | Variable_name | Value | +-----------------+----------+ | key_buffer_size | 33554432 | +-----------------+----------+ 1 row in set (0.00 sec) mysql> show variables like '%thread_cache%'; +-------------------+-------+ | Variable_name | Value | +-------------------+-------+ | thread_cache_size | 16 | +-------------------+-------+ 1 row in set (0.00 sec) mysql> show variables like '%key_buffer_size%'; +-----------------+----------+ | Variable_name | Value | +-----------------+----------+ | key_buffer_size | 33554432 | +-----------------+----------+ 1 row in set (0.00 sec) mysql> show variables like 'sort_buffer_size%'; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | sort_buffer_size | 16777216 | +------------------+----------+ 1 row in set (0.00 sec) mysql> mysql> show variables like '%read_buffer%'; +------------------+---------+ | Variable_name | Value | +------------------+---------+ | read_buffer_size | 2097152 | +------------------+---------+ 1 row in set (0.00 sec) mysql> show variables like '%query_cache_size%'; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | query_cache_size | 16777216 | +------------------+----------+ 1 row in set (0.00 sec) mysql>
ちゃんと設定値が反映されているようです。
設定前後の比較表は以下になります。
項目 | 変更前の値 | 変更後の値 |
key_buffer_size | 8388608 | 33554432 |
thread_cache_size | 0 | 16 |
key_buffer_size | 8388608 | 33554432 |
sort_buffer_size | 2097152 | 16777216 |
read_buffer_size | 131072 | 2097152 |
query_cache_size | 0 | 16777216 |
表にすると分かりやすいです。ちゃんと設定変更がされているようです。
あなたの観点がうまくいった
うまくいって良かったです!
ありがとうございます。