my.iniファイルの確認と修正
MySQLに関する設定はmy.iniファイルを使用します。ここではmy.iniファイルに記載されているデフォルトの内容を確認し、また修正を一部行います。基本的に文字コードに関する設定を追加していくことになります。
1.my.iniファイルの場所
2.XAMPPコントロールパネルからmy.iniファイルを開く
3.my.iniファイルの設定変更
my.iniファイルは「(XAMPPインストールディレクトリ)\mysql\bin\my.ini」にあります。
ファイルの修正も一部行いますので必要であれば元のファイルをコピーしてバックアップを取っておいて下さい。
my.iniファイルはXAMPPコントロールパネルからも開くことができます。XAMPPコントロールパネルを起動し、MySQLのところにある「Config」ボタンをクリックして下さい。
次のように表示がされますの「でmy.ini」と書かれた個所をクリックして下さい。
「my.ini」ファイルがテキストエディタで開きます。これは手動で「my.ini」ファイルを開いた場合と同じです。
ではファイルの内容を確認していきます。「my.ini」ファイルはテキストファイルですのでテキストエディタで開いて下さい。「mi.ini」ファイルの中身は大きく分けると次のようになっています。
[client] ... [mysqld] ... [mysqldump] ... [mysql] ... [isamchk] ... [myisamchk] ... [mysqlhotcopy] ...
今回詳細な解説は割愛させて頂きますが、基本となる文字コードをUTF-8として使用することを前提に設定を追加していきます。
最初に[mysqld]の箇所を見て下さい。最後の方に次のような記述があります。
## UTF 8 Settings #init-connect=\'SET NAMES utf8\' #collation_server=utf8_unicode_ci #character_set_server=utf8 #skip-character-set-client-handshake #character_sets-dir="C:/xampp/mysql/share/charsets"
"#"が先頭についている行はコメント行となっています。次の5つの行について"#"を外して下さい。(「init-connect=\'SET NAMES utf8\'」のままですとphpMyAdminでエラーが表示されるため「init-connect=SET NAMES utf8」としてあります)。
## UTF 8 Settings init-connect=SET NAMES utf8 collation_server=utf8_unicode_ci character_set_server=utf8 skip-character-set-client-handshake character_sets-dir="C:/xampp/mysql/share/charsets"
次に[client][mysqldump][mysql]の各最後に次の行を追加で記述して下さい。
[client] # password = your_password port = 3306 socket = "C:/xampp/mysql/mysql.sock" default-character-set=utf8 ... ... [mysqldump] quick max_allowed_packet = 16M default-character-set=utf8 [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates default-character-set=utf8
変更は以上で終了です。設定を有効にするにはMySQLを再起動する必要があります。
( Written by Tatsuo Ikura )