somemo programming etc.

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【MySQL】my.cnfの設定

midiumからコピーしたmy.cnfに加えた設定です。

# my.cnfの修正
[client]
default-character-set = utf8

[mysqld]
# 文字コード設定
character-set-server = utf8
# クライアントの文字コードとサーバの文字コードを同様にセット
skip-character-set-client-handshake

# デフォルトのテーブルタイプ指定(InnoDBトランザクションMyISAMは早いけどトランザクション無)
default-storage-engine=InnoDB 

# エラーログ(警告メッセージも記録する)
log-error = /var/log/mysql/mysqld-error.log
log-warnings=1

# 一般ログ(全て出力されるので開発のみ)
general_log = 1
general_log_file = /var/log/mysql/mysql.log

# 長い時間を要したクエリのログ
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysqld-slow.log
long-query-time=5

# 管理用コマンドの実行で長い時間を要したものも記録する
log-slow-admin-statements

# エラーなどの表示を日本語化する
#language=/usr/local/mysql/share/japanese
lc-messages-dir=/usr/local/mysql/share

# mysqldで十分
#[mysqld_safe]
#log-error = /var/log/mysql/mysqld_safe-error.log
#character-set-server = utf8

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8

ログディレクトリとログの作成と文字コードの確認をして完了です。

# ログディレクトリとログの作成
mkdir /var/log/mysql
touch /var/log/mysql/mysql.log
touch /var/log/mysql/mysqld-slow.log
chown mysql /var/log/mysql/mysql.log /var/log/mysql/mysqld-slow.log
chmod 660 /var/log/mysql/mysql.log /var/log/mysql/mysqld-slow.log

# 文字コードの確認
status