よく考えるとレアケースなんですが今月末に作業が控えているのでメモ。
データベース名はdb1, 移行対象のテーブル(2つ)はtable1,
table2とする。移行元ではMyISAMエンジンを使っていて、移行先ではInnoDBエンジンに変える。
シンプルなパターン。何も考えずにmysqldumpでばっこ抜く。
$ time mysqldump -S /xxx/mysql.sock -uroot -pxxx --default-character-set=binary --single-transaction db1 table1 table2 > mysqldump.sql
real 0m30.573s
user 0m27.051s
sys 0m3.078s
$ ll -h
合計 2.0G
-rw-rw-r-- 1 mysql mysql 2.0G 11月 6 13:38 2013 mysqldump.sql
合計2GB。scpで転送して20秒ちょっと。コイツをリストア先に流し込む。
まずはMyISAMでリストアしてからInnoDBに変換。
$ time mysql -S …[さらに読む]