移行ガイド: IBM Db2 から Azure SQL Database
適用対象: Azure SQL データベース
このガイドでは、SQL Server Migration Assistant for Db2 を使用して、IBM Db2 データベースを Azure SQL Database に移行する方法について説明します。
その他の移行ガイドについては、「Azure データベースの移行ガイド」を参照してください。
前提条件
Db2 データベースを SQL Database に移行するには、以下が必要です。
- ソース環境がサポートされていることを確認する。
- SQL Server Migration Assistant (SSMA) for Db2 をダウンロードする。
- Azure SQL Database 内のターゲット データベース。
- ソースとターゲットの両方への接続と、十分なアクセス許可。
移行前
前提条件を満たしたら、環境のトポロジを検出し、Azure Cloud 移行の実現可能性を評価する準備が整いました。
評価と変換
SSMA for Db2 を使用して、データベース オブジェクトとデータを確認し、データベースの移行を評価します。
評価を作成するには、次の手順を行います。
SSMA for Db2 を開きます。
[ファイル]>[新しいプロジェクト] の順に選択します。
プロジェクト名とプロジェクトを保存する場所を指定します。 次に、ドロップダウンリストから移行ターゲットとして [Azure SQL Database] を選択し、 [OK] を選択します。
[Db2 への接続] で、Db2 接続の詳細の値を入力します。
移行する Db2 スキーマを右クリックし、 [レポートの作成] を選択します。 これにより、HTML レポートが生成されます。 また、スキーマを選択した後、ナビゲーション バーから [レポートの作成] を選択することもできます。
HTML レポートを確認し、変換の統計情報とエラーまたは警告を把握します。 また、Excel でレポートを開き、Db2 オブジェクトのインベントリとスキーマ変換の実行に必要な作業量を確認することもできます。 このレポートの既定の場所は、SSMAProjects 内のレポート フォルダーです。
(例:
drive:\<username>\Documents\SSMAProjects\MyDb2Migration\report\report_<date>
)。
データ型を検証する
既定のデータ型マッピングを検証し、必要に応じて要件に基づいて変更します。 これを行うには、次のステップに従います。
メニューから [ツール] を選択します。
[プロジェクトの設定] を選択します。
[Type mappings](型のマッピング) タブを選択します。
Db2 メタデータ エクスプローラーでテーブルを選択し、各テーブルの型マッピングを変更します。
スキーマの変換
スキーマを変換するには、次の手順を行います。
(省略可能) 動的またはアドホック クエリをステートメントに追加します。 ノードを右クリックし、 [Add statements](ステートメントの追加) を選択します。
[Azure SQL Database に接続する] を選択します。
- Azure SQL Database でデータベースに接続するための接続の詳細を入力します。
- ドロップダウン リストからターゲット SQL データベースを選択するか、新しい名前を指定します。指定した場合は、ターゲット サーバー上にデータベースが作成されます。
- 認証の詳細を指定します。
- [接続] を選択します。
スキーマを右クリックし、 [スキーマの変換] を選択します。 または、スキーマを選択した後、上部のナビゲーション バーから [スキーマの変換] を選択することもできます。
変換が完了したら、スキーマの構造を比較、確認し、潜在的な問題を特定します。 推奨事項に基づいて問題に対処します。
[出力] ペインで、 [結果の確認] を選択します。 [エラー一覧] ペイン、エラーを確認します。
オフライン スキーマ修復の演習のために、プロジェクトをローカルに保存します。 [ファイル] メニューから [プロジェクトの保存] を選択します。 これにより、スキーマを SQL Database に発行する前に、ソースとターゲットのスキーマをオフラインで評価し、修復を実行する機会が得られます。
Migrate
データベースの評価と不整合への対処が完了したら、次の手順は移行プロセスの実行です。
スキーマを発行し、データを移行するには、次の手順を行います。
スキーマを発行します。 Azure SQL Database メタデータ エクスプローラーの [データベース] ノードで、データベースを右クリックします。 次に、 [データベースと同期する] を選択します。
データを移行します。 Db2 メタデータ エクスプローラーで、移行するデータベースまたはオブジェクトを右クリックし、 [データの移行] を選択します。 または、ナビゲーション バーから [データの移行] を選択することもできます。 データベース全体のデータを移行するには、データベース名の横にあるチェック ボックスをオンにします。 個々のテーブルからデータを移行するには、データベースを展開し、 [テーブル] を展開して、テーブルの横にあるチェック ボックスをオンにします。 個々のテーブルのデータを除外するには、このチェック ボックスをオフにします。
Db2 と Azure SQL Database の両方の接続の詳細を指定します。
移行が完了したら、データ移行レポートを表示します。
SQL Server Management Studio を使用して、Azure SQL Database のデータベースに接続します。 データとスキーマを確認することによって移行を検証します。
移行後
移行が完了したら、移行後の一連のタスクを実行し、すべてが可能な限り円滑かつ効率的に機能していることを確認する必要があります。
アプリケーションを修復する
データがターゲット環境に移行された後、以前にソースを使用していたすべてのアプリケーションは、ターゲットの使用を開始する必要があります。 これを実現するには、場合によってはアプリケーションの変更が必要になります。
テストを実行する
テストは、次のアクティビティで構成されます。
- 検証テストを作成する: データベースの移行をテストするには、SQL クエリを使用する必要があります。 ソース データベースとターゲット データベースの両方に対して実行する検証クエリを作成する必要があります。 検証クエリには、定義したスコープが含まれている必要があります。
- テスト環境を設定する: テスト環境には、ソース データベースとターゲット データベースのコピーが含まれている必要があります。 必ずテスト環境を分離してください。
- 検証テストを実行する: ソースとターゲットに対して検証テストを実行してから、結果を分析します。
- パフォーマンス テストを実行する: ソースとターゲットに対してパフォーマンス テストを実行した後、結果を分析および比較します。
高度な機能
組み込みの高可用性、脅威検出、ワークロードの監視と調整など、SQL Database によって提供されるクラウドベースの高度な機能を利用してください。
SQL Server の一部の機能は、データベース互換レベルを最新の互換性レベルに変更した場合にのみ使用できます。
移行資産
詳細については、次のリソースを参照してください。これらは、実際の移行プロジェクトの取り組みをサポートするために開発されました。
Asset | 説明 |
---|---|
データ ワークロード評価モデルとツール | このツールを使用すると、特定のワークロードに対して、推奨される "最適な" ターゲット プラットフォーム、クラウドの準備状況、アプリケーションとデータベースの修復レベルがわかります。 シンプルなワンクリックの計算とレポート生成機能があり、自動化された均一なターゲット プラットフォームの決定プロセスが用意されているので、大規模な不動産評価を加速させることができます。 |
Db2 zOS データ資産の検出および評価パッケージ | データベース上で SQL スクリプトを実行した後、結果をファイル システム上のファイルにエクスポートできます。 スプレッドシートなど、外部ツールで結果をキャプチャできるように、*.csv などの複数のファイル形式がサポートされています。 この方法を使用すると、ワークベンチをインストールしていないチームと結果を簡単に共有することができます。 |
IBM Db2 LUW インベントリ スクリプトと成果物 | この資産には、IBM Db2 LUW バージョン 11.1 システム テーブルを照会する SQL クエリが含まれます。このクエリでは、スキーマおよびオブジェクトの種類ごとのオブジェクトの数、各スキーマの "生データ" の概算値、および各スキーマのテーブルのサイズを取得し、結果を CSV 形式で格納します。 |
IBM Db2 から SQL DB - データベース比較ユーティリティ | データベース比較ユーティリティは、ソースおよびターゲット プラットフォームの両方でデータが同一であることを確認するために使用できる Windows コンソール アプリケーションです。 このツールを使用すると、すべての、または選択したテーブル、行、および列内の行または列レベルまでデータを効率的に比較できます。 |
データ SQL エンジニアリング チームが、これらのリソースを開発しました。 このチームの主要な作業は、Microsoft の Azure データ プラットフォームへのデータ プラットフォーム移行プロジェクトの複雑な近代化を容易にし、迅速に進めることです。
次のステップ
さまざまなデータベースおよびデータ移行シナリオを支援するために使用できる Microsoft とサードパーティのサービスとツールについては、データ移行のためのサービスとツールに関するページをご覧ください。
Azure SQL Database の詳細については、以下を参照してください。
クラウド移行のためのフレームワークと導入サイクルの詳細については、次を参照してください。
アプリケーション アクセス レイヤーを評価するには、「Data Access Migration Toolkit」をご覧ください。
データ アクセス層の A/B テストの実行方法の詳細については、Database Experimentation Assistant に関するページをご覧ください。