2011年8月5日金曜日

MySQLの文字コード設定

mysqlコマンドでMySQLのデータベースに接続する際に設定と異なるキャラクターセットでログインする場合は
 --default-character-set={文字コード}
のオプションを利用することができます。

mysql --default-character-set=utf8 -u root -pXXXXX 


毎回つけるのが面倒な場合は、my.cnfの設定で変更が可能です。

% sudo vi /etc/mysql/my.cnf

[client]
port        = 3306
socket        = /var/run/mysqld/mysqld.sock
default-character-set = utf8   # ★追加

[mysqld]
#
# * Basic Settings
#
default-character-set = utf8   # ★追加

[mysql]
#no-auto-rehash    # faster start of mysql but no tab completition
default-character-set = utf8   # ★追加
 


設定されたかどうかを確認するには下記コマンドを用います。
SHOW VARIABLES LIKE 'char%';


MySQLに用意されている文字コードはこちらのコマンドで確認できます。
show character set;


MySQLインストール後に、特に何も変更していなければ
デフォルトでは latin1 が設定されます。

<注意>
上記はMySQL5.1の場合の設定ですが、
MySQL5.5以降では、[mysqld]セクションのdefault-character-setがなくなり、
character-set-serverに変わったそうです。


MySQLのバージョンチェックするにはこちら
select version();

+-----------------+
| version()       |
+-----------------+
| 5.1.37-1ubuntu5 | 
+-----------------+
1 row in set (0.02 sec)

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。