とある案件でレンタルサーバ上で動いているサイトのDBデータを、検証用に自分の使えるねっとのVPSのMySQLに移行したときのメモ。
そもそも。phpMyAdminではインポートできるファイルの最大サイズが「最大サイズ: 2,048MB」と記載されている。
それより大きなデータ量だったので、手元のwindows環境のMySQLに取り込むのには、コマンドプロンプトからMySQLをroot権限で起動して「source c:/hogehoge.sql」のようにしてインポートした。
で、使えるねっとのVPS環境でも単純に同じようにできるのかと思ったが、少しはまったのでメモ。
1.SSHでログインし、「mysql -u admin -p」でadminユーザーとしてMySQLにログイン。
2.使用するDBを「use hogehoge」で指定。
2.「source /var/www/vhosts/fugafuga.com/hogehoge.sql」でインストールするSQLファイルのパスを指定してインストール。
3.上の手順でインストールには成功したのだが、文字化けが発生。
4.一旦インストールしたデータをphpMyAdmin上から全削除。
5.DBの文字コードをUTF-8に設定してあるか確認したところ、きちんとUTF-8になっていた。
6.My.cnfの[mysqld]に「skip-character-set-client-handshake」の記述を追加。
[参考 http://blog.cheki.net/archives/349]
7.再度「source /var/www/vhosts/fugafuga.com/hogehoge.sql」でインストールしたところ、文字化けも起こらず成功した。
8.【追記】adminユーザーのかわりにrootユーザーをphpMyAdmin上で作成して、「source /var/www/vhosts/fugafuga.com/hogehoge.sql」でインストールしても成功した。危険なので、rootユーザーはすぐに削除したけどね。
(adminユーザーで事足りるので、rootユーザーを作成する必要はなし)