Chat (Lingr.com)
Informaiton
Daily
Column
- MySQL日本語の旅(5/1)
- アクセス向上秘伝(5/9)
- 一風変ったHaskellλ門(6/13)
- SICP Answer Book (5/31) 問題3.26追加
Zope Solution
Extra
アーカイブ
OSS案内所
Site Info
関連リンク
/etc/my.cnf の [mysql]グループで指定した場合、そのMySQLサーバに接続して 利用する全てのユーザのmysqlクライアントに反映される。
あるユーザは、ujisで良いかも知れないが、 別のユーザは sjis であって欲しいかもしれない。 こういう場合には、 /etc/my.cnf では全ユーザに反映されるので駄目である。
かといって、ユーザに長いオプションを打たせるのは良くない。
でも、MySQLでは、ちゃんとユーザ毎にオプションファイルを持っておくことが 可能になっている。形式は、/etc/my.cnfと同じであるが、~/.my.cnf というファイル名で、各自のホームディレクトリに、 隠しファイルとして置いておけばよい。
~/.my.cnf
ということで、
$ cd $ cp /etc/my.cnf .my.cnf
とすることで、/etc/my.cnf をコピーした。
この .my.cnf の [mysql]グループの最後にある default-character-set の指定を、ujis から sjis に変更してみよう。
[mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates default-character-set=sjis
これで、再び mysqlクライアントコマンドを起動して、 キャラクタセットを調べてみよう。
$ mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 to server version: 4.1.10-standard-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SHOW VARIABLES LIKE 'character\_set\_%'; +--------------------------+--------+ | Variable_name | Value | +--------------------------+--------+ | character_set_client | sjis | | character_set_connection | sjis | | character_set_database | latin1 | | character_set_results | sjis | | character_set_server | latin1 | | character_set_system | utf8 | +--------------------------+--------+ 6 rows in set (0.00 sec) mysql>
/etc/my.cnf では ujis に指定されていたが、~/.my.cnf の方が 優先順位が高く、結局 sjis がセットされたことが分かる。
フィードバック:
There is no comment.