MySQLで日本語を使えるように設定

MySQLで日本語が使えるようにする。

rootユーザでログオンし、MySQLの現在のステータスをチェックする。

mysql> status

mysql Ver 14.7 Distrib 4.1.9, for pc-linux-gnu (i686)

Connection id: 18
Current database: mysql
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 4.1.9-standard
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /var/lib/mysql/mysql.sock
Uptime: 1 hour 29 sec

という情報が出てくるはず。
この状態だと日本語が使えない(latin1=1バイトコードのアルファベットですね)。

なので設定を書き替えないといけない。
Web上でこの情報を探すと、etc/my.cnf 書き替えろ!と言われているのだが、これが落とし穴。"デフォルトで etc/my.cnfは存在していない!"のである。

そこでテキストエディタを立ち上げて、次の内容を記入、etc/my.cnfのファイルネームで保存した。

[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set = ujis

[mysqld]
user = mysql
socket = /var/lib/mysql/mysql.sock
port = 3306
default-character-set = ujis
skip-locking
key_buffer = 16K
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer_size = 64K
net_buffer_length = 2K


次にMySQLを再起動する。

# /etc/init.d/mysql restart

rootでログオンし、現在のステータスを確認する。

mysql Ver 14.7 Distrib 4.1.9, for pc-linux-gnu (i686)

Connection id: 1
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 4.1.9-standard
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: ujis
Db characterset: ujis
Client characterset: ujis
Conn. characterset: ujis
UNIX socket: /var/lib/mysql/mysql.sock
Uptime: 1 min 4 sec

ちゃんと日本語が使えるようになってますね! (^-^)

0 件のコメント:

コメントを投稿