OracleデータベースをMySQLサーバーに移行する方法 [閉まっている]


8

現在、アプリケーションはOracle 11gデータベースを使用して実行されています。MySQLクラスターで動作するアプリケーションの新しいバージョンを開発しています。OracleデータベースからMySQLデータベースにデータを移行する必要があります。これはデータベースオブジェクトの直接コピーではありません。新しいバージョンのアプリケーションスキーマ(テーブルの構造と関係)が変更されました。また、監査テーブルもコピーする必要があります。古いOracleスキーマと新しいMySQLスキーマのテーブル、列をマップし、コピーを適用してデータをコピーする方法はありますか?

この活動は2つのステップで行うことを考えています。1. OracleデータベースをMySQLデータベースに変換します。2.テーブルごとにテーブルをコピーするストアドプロシージャを記述します。

この種のデータベースをあるRDBMSベンダーから別のベンダーに移行する際のベストプラクティスはありますか これに利用できるオープンソースまたは商用ツールはありますか?

回答:


5

この移行は2つのステップで行うことをお勧めします。

  1. MySQL Workbenchを使用して、ほとんどのdbオブジェクトとデータをMySQLに移行します(テーブルデータもこのプロセスによってコピーされます)。詳細については、MySQL Workbench移行ウィザードの使用を参照してください。これにより、ストアドプロシージャなどの特定のオブジェクトを手動で操作することができます。ストアドルーチンはOracleとMySQLで大きく異なるため、自動移行を実行できるツールはありません。
  2. MySQL Workbenchを使用して、移行したデータベースをモデルにリバースエンジニアリングします。
  3. このモデルを使用して、オブジェクトを新しいスキーマ構造に調整します。
  4. モデルをサーバーに同期して、変更を適用します。行った変更によっては、これが非破壊的である場合がありますが、もちろん、バックアップを取ることは常に良い考えです。

スキーマを段階的に調整したい場合は、ステップ3と4を何度でも繰り返すことができます。同期は、他のユーザーがスキーマで行った変更も引き継ぎます(双方向同期)。

OracleからMySQLへの移行は、MySQL Workbenchではサポートされていません。上記の私の提案はすべてそれだけです。少なくとも部分的に機能させるために試すことができるアイデアです。ただし、前述のとおり、OracleからMySQLへの移行はサポートされていないため、テストは行われていません。


0

最近、DBConvertと呼ばれるプログラムを使用してOracle DBをMySQLに変換し ました。大きなテーブルに透かしを挿入する無料バージョンがありますが、これは修正できます。;)完璧ではなく、変換後に修正するためにいじくり回す必要があるかもしれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.