開発中に rake db:migrate がエラーで中断しても、元に戻す方法がわからない。スキーマを書き換える SQL なんて覚えてない。失敗したのにスキーマのバージョンだけ上がったりする。 こういった問題を解決する、感動的なすごい方法があるのでは、と思って調べてたんだけど、見つけられなかった。 バックアップしてテスト環境で実行するのがよさそうです。普通です。 以下手順。環境は Rails 3 + MySQL。 mysqldump を使って development DB を test にコピーする。バックアップ用の DB も作ってコピー。 $ mysqldump -u root myapp_development | mysql -u root myapp_test $ mysqldump -u root myapp_development | mysql -u root myapp_ba