MySQL Migration Wizard登場

これ、本当にMySQL Workbenchのマイナーバージョンアップの一部でいいの?

メンテナンスを含めて開発終了となっていたMySQL Migration Toolkitの後継にあたる、新しいマイグレーションツールがリリースされました。名称はMigration Wizardで、独立したソフトウェアでは無くMySQL Workbenchの一部機能となっています。ライセンスは「もちろん」GPLです。これで以前のMySQL GUI Toolsの全ての機能が戻ってきたことになります。ダウンロードはこちらから。

Migration Wizardの具体的なマイグレーション元の第一弾としては、Microsoft SQL Serverがサポートされています。またODBCをサポートしているため、他のデータベースからのマイグレーションも可能です。動作環境はWindows, Mac OS X および Linuxです。但しWindowsでは.Netフレームワークなどが別途必要となりますのでご注意ください。

Migration Wizardの起動方法はMySQL Utilitiesの起動と同じく、起動にはMySQL Workbenchのメニューの【Database】から【Migrate. . .】か、MySQL Workbenchメイン画面の右上のアイコン【Database Migration】を選びます。ディスプレイの解像度(特に横)が低い場合などはこの【Database Migration】のアイコンが表示されないこともあるため、▽のプルダウンボタンから選ぶ必要があります。


開発チームのブログ記事ではSQL Server 2000からMySQL 5.5へのマイグレーションを紹介しています。

準備作業は以下の通りです。

  • マイグレーション元のデータベース用のODBCドライバがインストールされていること
  • メニューの【Plugins】から【Start ODBC Administrator】から

ODBCデータソースアドミニストレータを起動してドライバの有無を確認
Windows ODBC Data Source Administrator


マイグレーション作業の流れは以下の通りです。
1. メイン画面右側の【Database Migration】アイコン、またはメニューの【Database】から【Migrate】を選択
The initial screen of MySQL Workbench
2. 新しいタブにMigration Wizardが表示される。【Start Migration】ボタンで次に進む
Overview Page
3. マイグレーション元のデータベースおよび接続方法を選択する
Source Selection Page
4. ターゲットのMySQLサーバを選択する
Target connection parameters
5. 【Next】ボタンを押すとマイグレーション元のデータベースに接続しスキーマを抽出
Fetch schemata list page
6. マイグレーション元のスキーマを選択
Schemata Selection Page
7. 「リバースエンジニアリング」としてテーブル名や列名、外部キーやインデックスなどを検索
Reverse Engineer Progress
8. マイグレーションするデータベースオブジェクトを選択
Source Objects Page
9. 一部のオブジェクトを選択する場合は【Show Selection】ボタンを押す
Source Objects Page Expanded
10. データ型などのマッピングをテスト
Manual Editing Page
11. 【Show Code and Messages】を押すと、生成されたコードの確認と編集が可能
Manual Editing Page Expanded
12. 右上のViewのプルダウンから【Column Mappings】を選ぶと列のマッピングが確認と編集が可能
Column Mappings
13. スキーマを直接ターゲットのMySQLにコピーするか、ファイルに書き出すかを選択
Target Creation Options Page
14. ターゲットのMySQLに接続し、スキーマを作成
Create Schemata Progress Page
15. 作成されたスキーマの確認。エラーがあった場合などはOutput Messagesに出力される
Create Target Results Page
16. データを直接ターゲットのMySQLにコピーするか、ファイルに書き出すかを選択
Data Transfer Setup Page
17. 実際にデータを移行
Bulk Data Transfer Page
18. ウィザードの最終ページにマイグレーション結果のログが出力される
Migration Report Page
19. SQL Editorにてスキーマやデータを確認
A query on the MySQL migrated database
21. メイン画面中央下の【Create EER Model From Existing Database】からER図を作成
EER Model for the Migrated Database