MAMP環境下でMySQLのテーブル文字化けをターミナルから修正する
MacOS Lion環境下で、ターミナルからMAMPのMySQL文字コードを変更するフロー
$ cd ~/Applications # 次の処理はApplicationsディレクトリ下のMAMPのインストールを確認するフロー $ find /Applications -type d -name "MAMP" # MAMPのディレクトリへ移動 $ cd /Applications/MAMP/ # mysqlのあるディレクトリへ移動 $ cd ./Library/bin/ # mysqlの実行 $ ./mysql -u root -p Enter password: password mysql> USE database_name; # テーブルの情報(CHARSETを含むを確認) # おそらく、文字化けを起こしているような場合は CHARSET=latin1 となっている mysql> SHOW CREATE TABLE table_name; # 文字コードをutf8へ変更(utf-8ではないので注意) mysql> ALTER TABLE table_name CONVERT TO CHARACTER SET utf8; mysql> exit;
ちなみに、CREATE TABLE を実行する際のオプションで文字コードを設定するには
CREATE TABLE `table_name` ( `id` int(11) NOT NULL auto_increment, `name` varchar(200) NOT NULL default '0', ) ENGINE=MyISAM AUTO_INCREMENT=1, CHARACTER SET=utf8;
のように、オプションとして付け加えることができる。
基本的に、my.cnfで文字コードを設定していれば問題ないが、
phpmyadminなので、例外的に文字化けを起こすことがあるので、その際の処方箋として。