CentOSのMySQL5.1のmy.cnfを秘伝らしきものに変えてみた。

今までは、utf-8を追加するぐらいだったのですが。。。

MySQLの設定ファイル my.cnf をgithubにて公開しました & チューニングポイントの紹介 - blog.nomadscafe.jp
↑こんなのを見かけたので。。。

事前準備

  • my.cnfのバックアップ
  • innoDBのログの削除
  • MySQLの再起動
# cp /etc/my.cnf /etc/my.cnf.bk
# cd /var/lib/mysql
# rm ib_log*
# service mysqld restart
↑ 失敗するようなら、"less /var/log/mysqld.log" を見ましょう。

/etc/my.cnf (元のものをCentOSに合わせていじっています) ↓

[client]
port = 3306
socket = /var/lib/mysql/mysql.sock

[mysql]
no-auto-rehash
#safe-updates
prompt = '\u@<HOSTNAME> mysql>'

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
port = 3306
user=mysql
skip-external-locking
key_buffer = 32M
max_allowed_packet = 8M
table_cache = 256
max_connections = 1024
max_connect_errors = 10000
sort_buffer_size = 1M
read_buffer_size = 1M
myisam_sort_buffer_size = 1M
thread_cache = 256
query_cache_size = 0M
query_cache_type = 0
thread_concurrency = 8
tmp_table_size = 64M
max_heap_table_size = 64M
skip-name-resolve
character-set-server=utf8
default-storage-engine=InnoDB

log-bin=mysql-bin
relay-log=relay-mysql-bin
binlog_format=mixed
log_slave_updates
replicate-ignore-db=mysql

slow_query_log
long_query_time = 3

#server-id = <SERVER_ID>

ignore-builtin-innodb
plugin-load=innodb=ha_innodb_plugin.so;innodb_trx=ha_innodb_plugin.so;innodb_locks=ha_innodb_plugin.so;innodb_lock_waits=ha_innodb_plugin.so;innodb_cmp=ha_innodb_plugin.so;innodb_cmp_reset=ha_innodb_plugin.so;innodb_cmpmem=ha_innodb_plugin.so;innodb_cmpmem_reset=ha_innodb_plugin.so
innodb_strict_mode
innodb_data_file_path = ibdata1:10M:autoextend
innodb_data_home_dir = /var/lib/mysql
innodb_file_format = Barracuda
innodb_file_per_table
innodb_buffer_pool_size = 2G
innodb_additional_mem_pool_size = 20M
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 1
innodb_log_file_size = 512M
innodb_log_buffer_size = 16M
innodb_log_files_in_group = 2
innodb_flush_method=O_DIRECT
innodb_lock_wait_timeout = 120

[mysqldump]
quick
max_allowed_packet = 16M

[myisamchk]
key_buffer = 8M
sort_buffer_size = 8M
read_buffer = 1M
write_buffer = 0M

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

innodb_buffer_pool_size = 2G としてますがメモリ搭載量にあわせてお好みで。

結果
【記事途中】各種Databaseの性能を Apache Bench でいろいろと比較【MySQL, MemSQL, Redis, MongoDB】 - 自分用備忘録
↑これと比べてみたけれど変化ありませんでした/(^o^)\