mysqlのutf-8化
——————————–
とりあえず環境は以下の通り、
OS WindowsXP ServicePack3
Memory 2GB
Xampp 1.7.3
PHP 5.3.1
mysql 5.1.41
———————————
昨日、phpのutf-8化をやりましたが、今日はDatabaseのmysqlの文字コードをutf-8に変更します。
この作業をやっておかないと後々大変面倒なことになります。
デフォルトの文字コードがlatain1ナントカというものに設定されているので、作るDB、作るテーブルが全てその文字コードになってしまいます。
さて、やりかたはいつものようにネット依存で。 これも非常にたくさんの記事がヒットします。
今回はgoogleで「Xampp mysql utf-8 1.7」という文字列で検索。
じぶたれ航路さんの記事を参考に以下を実施しました。
・私がインストールしたXampp Ver1.7.3 ではこの記事に記載の方法でOKとなります(たぶん。。。) ただし、XamppのVersionによって、いろいろとやり方が異なるようですのでご注意ください。
[Xampp Versionによる違い]
・Xampp Ver1.7.1と1.7.2は少しややこしそうです。いろいろな記事を読んでみると、my.ini を修正した後 my.cnf に名前を変更するようなことが書いてありました(記事によって様々なやり方で問題をクリアしていました)。1.7.1,1.7.2の方は最新版をインストールし直した方が良いと思います。
・Xampp 1.7.0以前の場合は、my.ini ではなくて my.cnf が設定ファイルなのですが、cnfという拡張子がwindowsの「短縮ダイヤル」と同じで、デフォルトのWindows folderの設定だと拡張子が見えないとのことです。 これも、phpの古いVersionを使いたい等の事情がない限りは最新版をインストールすることをお勧めします。
(1)my.iniの修正
b
・・xamppmysqlbinmy.ini をエディタで修正。
[mysqld]の部分に次の2つのフレーズを追加
[mysqld]
・・・
・・・
default-character-set=utf8
skip-character-set-client-handshake
・・・
修正後はいつものように utf-8 BOM無し で保存。
(2)mysqlを再起動
Xampp Controllerからmysqlを再起動します。
(3)確認
・ブラウザで http://localhost/phpmyadmin/ にアクセス。
・SQL 実行画面に行き次のSQLを実行する。
show variables like “char%”;
これでうまくいったのではないかと思います。
メッセージ