ホーム > ブログ > プログラミングTips > WorkBenchでデータ移行

WorkBenchでデータ移行

2015.11.06

おはです、銀ねこです。

最近CMSの仕事が増えてきて、ローカルに仮想環境作って本番にUPというのが増えてきました。
WordPressならエクスポート、インポートできますが色々不具合が…。まるっとそっくり綺麗にデータの引っ越しができたほうが楽チンですよね?

そこで、WorkBenchを使ってMySQLのデータ移行についてまとめます。

WorkBenchってなんぞや?

データベースといえばphpMyAdminを思い浮かべますが、WorkBenchというデータ操作に超便利なツールがあります。

詳しくはこちら>WorkBench

黒い画面なんぞ触らなくてもGUIで簡単にデータ操作できるわけです。
英語ですが。日本語化もできるみたいですが、負けた気がするのでなんとかこのままで頑張ってます。

今回やったこと

今回すでにアップしているサイトに不具合があったので、一旦ローカルに落として原因を探して修正するということをやりました。

  • 既存サイトのデータベースをphpMyAdminからエクスポート
  • ローカルに環境を作り、データベースをWorkBenchでインポート

いろんなサイトにやり方は書いてあり、データを上部メニューのserver>dataimportからやるとエラー吐いてうまくデータが移行できないという事態。

スクリーンショット-2015-11-06-07.56.02.png

しろたん師匠に指導を仰ぎ、なんの問題なくインポートできました。

phpMyAdminからデータをエクスポート

まずはphpMyAdminからデータをエクスポートします。
まずはphpMyAdmin管理画面に入ってから、インポートしたいデータを選択。

スクリーンショット-2015-11-06-08.03.55.png

エクスポートを選択。

スクリーンショット-2015-11-06-08.04.13.png

何も設定はいじらずデフォのままで実行をクリック。

スクリーンショット-2015-11-06-08.04.48.png

〜.sqlという拡張子でデータベースがダウンロードできると思います。
もちろん、ローカルではURLやパスなど違うのでその辺は適宜テキストエディタで書き換える必要があります。変更箇所を一気に置換しちゃいましょう。

WorkBenchからデータをインポート

次はWorkBenchからデータをインポートします。

今回新規で作ったのですがデータベースを新規で入れるとエラーを吐いてうまくいかなかったので、一度インストールし、データベースを削除、再度データベースを作り直しました。

通常はこんなやり方しないと思うのであくまで参考に。

ということでまずはTables中の不要なデータを削除します。
DROP ◯◯ Tablesで中のデータを削除します。

 

しろたん師匠からのご指摘

テーブルを消すのは古いのがある場合や途中で失敗のときで、普通は通常の流れだとdropはないはず。迂闊に消すと大事故起こすもとなので、通常は移行先も作業前に全体のバックアップ取るのがいいですね

※通常・新規の場合はDropはありません。

※すでにあるサイトを修正する場合はデータベースのバックアップを必ずとっておきましょう。

 

スクリーンショット-2015-11-06-08.05.52.png

 Query内にデータベースを貼り付けます。

そしてかみなりマークをクリックして実行。スクリーンショット-2015-11-06-08.06.43.png

すると以下のようにだーっとテーブル作成のログがでます。

左のマークが緑だとテーブル作成成功です。

おめでとーん。

スクリーンショット-2015-11-06-08.14.00.jpg

そして更新マークを押すとテーブルができていることが実際確認できます。

スクリーンショット-2015-11-06-08.22.00.jpg

最後にデータが反映されてるかサイトを見てみましょう。

パスの書き換え忘れなどが結構残ってることがあるので要注意です。

まとめ

今回はWordPressのケースだったのですが、concrete5でも問題なくできます。

デザイナ寄りの人はデータベースが苦手なので(私も含め…)この記事が一助になればと思います。