MariaDBやMySQLで,MS Windows の MySQLモニタを使っているときに,日本語エラーメッセージがうまく出ない
問題がある
xampp-win32-5.6.12 (2015年8月) に同梱されているMySQLでの話.
my.ini の [mysqld] セクションで,
lc_messages_dir="インストールディレクトリ/mysql/share" lc_messages=ja_JP
と指定して,メッセージを表示させようとする.このとき,[mysql]セクションで,
default-character-set=utf8
としていれば,正しく表示されるのだが,default-character-set に cp932 を指定すると,
文字化けする (この場合でも,データベースの内容は正しく表示される).
まあ,utf8を指定すればよいから良いようなものだが (それにしても,source コマンドで実行する
ファイルを utf8 にしておかなくてはいけないという問題(?) はある),
xampp のそれ以降の版では,MySQLでなく,MariaDB が同梱されるようになってしまった.
MariaDB では,MySQLモニタが,utf8 に対応していない.つまり,default-character-set に cp932 を
指定せざるをえない.したがって,日本語エラーメッセージが文字化けする.
まあ,コマンドプロンプトの方を utf8 にすれば表示はされるのだが,コマンドプロンプトは
utf8入力に対応していない.mintty を使うことも考えたが,mintty だと,mysql コマンドが動作しない.
PowerShell のコマンド入力も試してみたが,コマンドプロンプトと同じだった.
手詰まり.