other: 2009年3月アーカイブ

よーは、適当にインストールしてしまった、MT&MySQLだったので、

latin1のままだったのですが、他のアプリから、デフォルトUTF-8で

接続したかったため、変更しましたよーってこと

まずは、MySQLの状態確認

 

# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.51a-log Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> STATUS;
--------------
mysql  Ver 14.12 Distrib 5.0.51a, for redhat-linux-gnu (i686) using  EditLine wrapper

Connection id:          1
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server version:         5.0.51a-log Source distribution
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    latin1
Conn.  characterset:    latin1
UNIX socket:            /tmp/mysql.sock
Uptime:                 4 sec

Threads: 1  Questions: 4  Slow queries: 0  Opens: 12  Flush tables: 1  Open tables: 6  Queries per second avg: 1.000
--------------

 

latin1のことを確認したら、バックアップを取りましょー

 

# mysqldump -uroot -p modperl --default-character-set=latin1 > modperl.latin1.db

 

んで、もってUTF-8にテーブルを変える

 

# sed -s 's/DEFAULT CHARSET=latin1/DEFAULT CHARSET=utf8/' modperl.latin1.db > modperl.utf8.db

 

んで、入れる

 

mysql -uroot -p modperl < modperl.utf8.db

 

んで、MySQLのmy.cnfに以下を追加してrestart

 

/etc/my.cnf
 [client]
 default-character-set = utf8
 [mysqld]
 default-character-set = utf8
 [mysql]
 default-character-set = utf8

 

ほいで、状態を確認する

 

# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.51a-log Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> STATUS;
--------------
mysql  Ver 14.12 Distrib 5.0.51a, for redhat-linux-gnu (i686) using  EditLine wrapper

Connection id:          2
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server version:         5.0.51a-log Source distribution
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:            /tmp/mysql.sock
Uptime:                 25 sec

Threads: 1  Questions: 91  Slow queries: 0  Opens: 24  Flush tables: 1  Open tables: 18  Queries per second avg: 3.640
--------------

 

パチパチ、めでたしめでたしって、思って

MTの管理画面をリロードしたら、文字化けしやがってる!!

 

なんで??

 

スポンサー

Perl 勉強本

Oracle 勉強本

J2EE 勉強するなら、これしかなくね?

ブログ管理人

SE perler@29

アドパートナー

tooland

Pingo!

boox