データ管理 (DMS) はデータベース移行機能を提供し、サービスソリューションをカプセル化してデータベースを移行し、チェックを実行し、移行したソースデータベースを削除できます。 このトピックでは、データベースを移行するためのチケットを作成する方法について説明します。
前提条件
次のデータベースが使用されています: ApsaraDB RDS for MySQLデータベース、PolarDB for MySQL、またはElastic Compute Service (ECS) インスタンス上の自己管理型MySQLデータベース。
説明ソースデータベースとターゲットデータベースは同じタイプである必要があります。
ソースデータベースとターゲットデータベースは、Security Collaborationモードで管理されます。 詳細については、「インスタンスの制御モードの表示」をご参照ください。
ソースデータベースのデータ書き込み処理を停止します。
背景情報
ビジネスが成長するにつれて、データベース構成をアップグレードまたはダウングレードするか、データベース全体を移行する必要があります。 この目的のために、DMSは、さまざまなデータベース内のスキーマとデータの均質な移行を可能にするデータベース移行機能を提供します。 この機能を使用して、移行先データベースの名前を変更したり、移行前にデータベース移行要件が満たされているかどうかを事前に確認したり、移行後に移行元データベースと移行先データベースのデータが一貫しているかどうかを確認したり、移行元データベースを削除したりできます。 この機能は、データベース移行のプロセス全体をカバーし、SaaSベンダーによるマルチテナント管理を容易にします。
メリット
多くのデータ移行ツールが利用可能です。 ただし、これらのツールのほとんどはO&Mに使用され、プロセスを管理する権限がありません。 これらのデータ移行ツールと比較して、DMSのデータベース移行機能には次の利点があります。
権限やプロセス管理など、DMSのセキュリティ管理機能を統合します。
data Transmission Service (DTS) のデータ移行機能を統合して、高いパフォーマンスと並行性を備えたサービスを提供します。 詳細については、「ハイパフォーマンス」をご参照ください。
サービスソリューションをカプセル化してデータベースを移行し、チェックを実行し、移行したソースデータベースを削除できます。 その後、テナントルーティング設定を更新し、リンクされたサービスを共同作業して、アプリケーションのSaaSチェーン全体でシームレスな移行を可能にします。
制限事項
データベース内の特定のテーブルではなく、すべてのテーブルを移行できます。
増分データではなく、完全なデータを移行できます。
テーブルのみを移行できます。
課金
今すぐデータベース移行機能を無料で使用できます。
手順
DMSコンソールV5.0 にログインします。
上部のナビゲーションバーで、 を選択します。
説明DMSコンソールをシンプルモードで使用する場合は、左上隅のアイコンの上にポインターを移動し、
を選択します。[データベース移行チケットの作成] ページで、次の表に示すパラメーターを設定します。
パラメーター
説明
タスク名
データベース移行タスクの名前。 不要なコミュニケーションを減らすのに役立つ名前を指定することをお勧めします。
ビジネスの背景
タスクのビジネス背景。
利害関係者
チケット承認プロセスに関与した利害関係者。 複数の利害関係者を指定できます。
ソースインスタンス
移行するデータベースが存在するデータベースインスタンス。
宛先インスタンス
データベースを移行するデータベースインスタンス。
説明ソースデータベースインスタンスとターゲットデータベースインスタンスは同じタイプである必要があります。
ソースデータベース
移行するデータベース。
説明複数のソースデータベースを選択する場合、これらのソースデータベースの所有者は同じである必要があります。
ソースデータベースに対するエクスポートと変更のアクセス許可が必要です。 権限を適用する方法の詳細については、「権限の管理」をご参照ください。
ターゲットデータベース
デフォルトでは、ターゲットデータベースの名前はソースデータベースの名前と同じです。 ターゲットデータベースの右側にある [編集] をクリックして、名前を変更できます。
移行オブジェクト
移行するオブジェクト。 複数のオプションを選択できます。 有効な値:
スキーマ移行: ソースデータベースのスキーマを移行します。
フルデータ移行: ソースデータベースのテーブルデータを移行します。
整合性の検証
移行後に、移行元データベースと移行先データベースのデータの一貫性を確認するかどうかを指定します。 有効な値:
検証しない: 移行後、DMSはソースデータベースとターゲットデータベースのデータの一貫性をチェックしません。
移行後の自動検証: 移行後、DMSは移行元データベースと移行先データベースのデータの一貫性のチェックを自動的に開始します。
[移行後の自動検証] を選択すると、[パラメーター設定] ダイアログボックスが表示されます。 ダイアログボックスで、テーブルの最大差と主キー以外のテーブルのデータ検証の上限パラメーターを設定し、[OK] をクリックします。
手動でのトリガー操作: データベースの移行後、データの整合性チェックをスキップするか、すぐに開始できます。
削除とリリース
移行後に移行元データベースインスタンスから移行元データベースを削除するかどうかを指定します。
[削除しない]: 移行後、移行されたソースデータベースをソースデータベースインスタンスから削除しません。
手動でのトリガー操作: データの整合性チェックが完了したら、移行したソースデータベースをソースデータベースインスタンスから直ちに、または後で削除できます。
移行後に自動的に削除: DMSは、移行後に移行されたソースデータベースをソースデータベースインスタンスから自動的に削除します。 これは非常に危険であり、現在サポートされていません。
提出アプリケーション をクリックします。 DMSは自動的に事前チェックを実行します。
事前チェックステップで事前チェックの結果を表示できます。 事前チェックが失敗した場合は、プロンプトに従って操作を実行します。
ソースデータベースのアクセス許可: ソースデータベースに対するエクスポートおよび変更のアクセス許可が必要です。 それ以外の場合、必要な権限を申請するように求めるエラーメッセージが返されます。
宛先データベースの権限:
ターゲットデータベースが存在する場合は、ターゲットデータベースに対する変更権限が必要です。 それ以外の場合、必要な権限を申請するように求めるエラーメッセージが返されます。
ターゲットデータベースが存在しない場合は、DMS管理者、データベース管理者 (DBA) 、またはデータベースインスタンスの所有者としてチケットを起票する必要があります。 それ以外の場合、エラーメッセージが返されます。
アクセス許可: DMSは、AliyunDMSDefaultRoleロールがその後の移行のためにAlibaba Cloudアカウントにアタッチされているかどうかを判断します。 このロールがAlibaba Cloudアカウントにアタッチされていない場合、エラーメッセージが返され、ロールを申請するように求められます。
ターゲットデータベースインスタンスの残りの容量:
ターゲットデータベースインスタンスがApsaraDB RDS for MySQLまたはPolarDB for MySQLの場合、DMSはターゲットデータベースインスタンスの使用可能なストレージ容量がデータベース移行に十分かどうかを確認します。
ターゲットデータベースインスタンスがECSインスタンス上の自己管理データベースである場合、エラーメッセージが返され、ターゲットデータベースインスタンスの使用可能なストレージ容量を確認するように求められます。
同じ名前のオブジェクト:
[スキーマ移行] を選択した場合、ターゲットデータベースインスタンスに、ソースデータベースと同じ名前のデータベースを含めることはできません。
フルデータ移行のみを選択した場合、ソースデータベースとターゲットデータベースには同じ名前のテーブルが必要であり、これらのテーブルのDDLステートメントは同じである必要があります。 これらのテーブルのDDLステートメントが異なる場合、エラーメッセージが返されます。 同じ名前のテーブルに履歴データが含まれている場合、警告が返されます。
ホワイトリスト:
ターゲットデータベースインスタンスがApsaraDB RDS for MySQLインスタンスまたはPolarDB for MySQLの場合、DMSは、ソースおよびターゲットデータベースインスタンスのIPアドレスホワイトリストにDTSの完全なIPアドレスホワイトリストが含まれているかどうかを確認します。 DTSのIPアドレスホワイトリストが不完全な場合、欠落しているIPアドレスが返されます。 プロンプトに従って設定を実行する必要があります。
ターゲットデータベースインスタンスがECSインスタンス上の自己管理型データベースである場合、DTSのホワイトリストに必要なすべてのIPアドレスが返されます。
事前チェックに合格したら、[承認の送信] をクリックします。
チケットの承認後、[今すぐ開始] または [スケジュール] をクリックします。
今すぐ開始: DMSはすぐにデータベース移行タスクを実行します。
スケジュール: [設定] ダイアログボックスで、データベース移行タスクを実行する日付と時刻を指定します。
タスクの実行中は、[チケットの詳細] ページの [実行] ウィザードの [データベースの移行] ステップで、移行の進行状況と移行ログを表示できます。
オプション: データベースの移行後、[次のステップ] をクリックしてデータの整合性を確認します。
[Skip Validation]: データの整合性チェックをスキップします。
今すぐ開始: [パラメーター設定] ダイアログボックスで、テーブルの最大差と非プライマリキーテーブルのデータ検証の上限パラメーターを設定し、[OK] をクリックします。
スケジュール: [設定] ダイアログボックスで、プライマリキー以外のテーブルの最大差とデータ検証の上限パラメーターを設定し、データ整合性チェックの日付と時点を指定して、[OK] をクリックします。
説明データに矛盾がある場合は、[詳細の表示] をクリックします。 [概要] ダイアログボックスで、[詳細] をクリックして不整合データを表示します。
少量のデータに矛盾がある場合は、データを変更します。
大量のデータに矛盾がある場合は, 原因分析を行い, 移行先のデータベースを削除してから, データベースを再度移行してください。
オプション: データ整合性チェックが完了したら、[次のステップ] をクリックしてソースデータベースを削除します。
完了: データベース移行チケットが完了しました。
今すぐ削除: [今すぐ削除] をクリックすると、移行されたテーブルはすぐに削除されます。 作業は慎重に行ってください。
遅延削除: [遅延削除] ダイアログボックスで、データ削除の時間間隔を指定します。 時間間隔は1〜30日に設定できます。 指定された時間間隔内にデータを復元する必要がある場合は、ロールバック機能を使用してソースデータベースのデータを復元できます。