mysql

現在、2台パソコンを利用しており、1台にmovabletypemysqlを導入している。wsjnew york timesの記事本文とメモを保存するのに利用している。3年以上前に購入したパソコンなので、新しい水冷PCに移行させようと考えた。
mysqlのデータはmysqldumpを利用してテキストファイルにすることができる。それをmysqlコマンドラインツールを用いて、簡単に復元できる筈だが、うまくいかない。自分でデータベースを作成したものは簡単に移行できたのだが、mtの復元は難しい。
mysqlの設定はsjis、しかしmtのテーブルにはeuc(ujis)で追加されている。文字コードの問題だろうと思って調べてみたが、行き詰まってしまった。いろいろ調べてみたら、alter database mt default character set ujis;を実行させることでeuc-jpで日本語を追加させることはできたようだ。しかし別の問題が浮上。
英文の文字コードだ。wsjnew york timesでは当然ながら文字コードeuc-jpではない。そのためeuc-jpに存在しない文字をばんばん利用している。フランスのアクサン文字やドイツ語のウムラウトなどだ。ユーロ記号もあった。それをmovabletypeにそのまま貼り付けて保存していたため、文字化けになっていた。mysqldumpでテキストには出力できたものの、mysqlを使って取り込むときにエラーになってしまう。文字化けのまま取り込んでくれれば良いのだが、エラー表示で止まってしまう。--forceオプションを利用して無理矢理追加しようとすると、大量のエラーメッセージが表示されかなりの数のレコードが追加されない。
どうしたものか。とりあえず、mysqldumpで定期的にバックアップファイルを保存することにした。今まではファイルをそのままバックアップしていたが、ファイルそのものをバックアップしても復元できるかどうかよく分からない。mysqldumpのほうが安全だろう。

結局6時間以上格闘してしまった。