Invalid signature

ここは俺の日記帳

MySQL の文字コード設定

Cake のチュートリアルにある insert を実行すると文字化けした。
以下のページを参考に my.conf の編集を行っている部分を抜き出す。
変数の定義も忘れずに。
http://blog.yoshikawa.64kb.net/2013/10/04/563

ただし skip-character-set-client-handshake に関してはここ
http://goungoun.dip.jp/app/fswiki/wiki.cgi/debianetch?page=2007%2F04%2F23-01%A1%A2skip-character-set-client-handshake+%A4%CB%A4%C4%A4%A4%A4%C6
やココ
http://blog.everqueue.com/chiba/2009/08/27/291/
で使わないほうが良いと言われているので削除。

すると mysql コマンド実行時に以下のエラーが出た。

ERROR 2002 (HY000): Can't connect to local MySQL server through socket
 '/var/run/mysqld/mysqld.sock' (2)
  

調べを進めるとまさにコレだというような情報を見つけた。

Precise に搭載されている MySQL のバージョンだと
default-character-set というオプションは廃止になり、このオプションを記述していると、
起動時にエラーを吐いてこけます。

新しいバージョンの MySQL では代わりに character-set-server オプションを使用してください。
https://forums.ubuntulinux.jp/viewtopic.php?pid=91260

まさに自分が利用しているのが Precise だった。 更に詳しく調べると
以下のページを見つけた。

バージョン5.5以降では[mysqld]セクションのdefault-character-setが廃止され、
代わりにcharacter-set-serverが追加されたそうです。
http://kawama.jp/archives/2011/02/14/mysql5-5_character-set-server.html

全ての default-character-set ではなく [mysqld] セクションのみ変わったようだ。

今まで得た情報を参考にプロビジョニング用のファイルを修正してチュートリアル
insert を試してみるとついに成功した。

MySQL のサービス名の違い

同じ Linux 系で Ubuntu 以外のディストリビューションの情報も
検索でよく引っかかるのだが、mysqlサービスの名前が Ubuntu と他で
違うのに混乱した。
Ubuntu では mysql で他では msqld だ。