RestoreDdrTable操作を呼び出して、ApsaraDB RDSインスタンスのデータをリージョン間で既存のインスタンスに復元できます。
この操作を呼び出す前に、CheckCreateDdrDBInstance操作を呼び出して、ソースインスタンスのデータをクロスリージョンバックアップファイルから復元できるかどうかを確認できます。
この API を呼び出す場合、インスタンスは次の要件を満たしている必要があります。
- インスタンスの個々のデータベースまたはテーブルの復元が有効になった後、ソースインスタンスのクロスリージョンバックアップファイルが作成されます。
- 特定の時点からデータを復元する場合、ソースインスタンスのログバックアップ機能が有効になります。
- 復元されたテーブルに使用する名前が、ターゲットインスタンスに存在しません。
- ソースインスタンスは、次のいずれかのデータベースエンジンを実行します。
- MySQL。 詳細については、「ApsaraDB RDS For MySQLインスタンスのリージョン間のバックアップ」をご参照ください。
- SQL Server。 詳細については、「ApsaraDB RDS For SQL Serverインスタンスのリージョン間のバックアップ」をご参照ください。
- 配布キーを修正します。 詳細については、「ApsaraDB RDS For PostgreSQLインスタンスのリージョン間のバックアップ」をご参照ください。
デバッグ
リクエストパラメーター
| 項目 | データ型 | 必須/任意 | 例: | 説明 |
|---|---|---|---|---|
| 操作 | String | 必須 | RestoreDdrTable |
実行する操作です。 値をRestoreDdrTableに設定します。 |
| DBInstanceId | String | 必須 | rm-bpxxxxx |
ソースインスタンスの ID。 |
| RegionId | String | 任意 | cn-hangzhou |
ターゲットインスタンスのリージョンID。 DescribeRegions を呼び出して、最新のリージョンリストをクエリできます。 |
| ClientToken | String | 任意 | ETnLKlblzczshOTUbOCzxxxxxxxxxx |
リクエストのべき等性を保証するために使用されるクライアントトークン。 クライアントを使用して値を生成できますが、生成されたトークンが異なるリクエスト間で一意であることを確認する必要があります。 トークンには ASCII 文字のみを含めることができ、長さは 64 文字を超えることはできません。 |
| RestoreType | String | 必須 | 0 |
使用する復元方法。 有効な値:
デフォルト値:0。 |
| BackupId | String | 任意 | 279563 |
使用するクロスリージョンバックアップファイルのID。 DescribeCrossRegionBackupsを呼び出して、クロスリージョンバックアップファイルのIDを照会できます。 説明 RestoreTypeパラメーターを0に設定した場合は、BackupIdパラメーターも指定する必要があります。
|
| RestoreTime | String | 任意 | 2020-04-25T16:00:00Z |
データを復元する時点。 指定された時点は、現在の時刻より前である必要があります。 yyyy-MM-dd T HH:mm:ss Z形式のISO 8601標準で時刻を指定します。 時間は UTC にする必要があります。 説明 RestoreTypeパラメーターを1に設定した場合は、RestoreTimeパラメーターも指定する必要があります。
|
| SourceRegion | String | 任意 | cn-beijing |
データをある時点に復元するソースインスタンスのリージョンID。 説明 RestoreTypeパラメーターを1に設定した場合は、SourceRegionパラメーターも指定する必要があります。
|
| SourceDBInstanceName | String | 任意 | rm-bpxxxxx |
データをある時点に復元するソースインスタンスのID。 説明 RestoreTypeパラメーターを1に設定した場合は、SourceDBInstanceNameパラメーターも指定する必要があります。
|
| TableMeta | String | 必須 | [{"type":"db","name":"testdb1","newname":"testdb1","tables":[{"type":"table","name":"test1","newname":"test1_backup" },{ "type":"table","name":"test2","newname":"test2_backup"}]}] |
ソースインスタンスに対して復元するデータベースとテーブルの名前。 構文: |
| ResourceGroupId | String | 任意 | rg-acfmy ***** |
リソースグループの ID です。 |
レスポンスパラメーター
| 項目 | データ型 | 例: | 説明 |
|---|---|---|---|
| RequestId | String | 75BBF1EF-1E90-4950-BFFB-252D26E8259B |
リクエストの ID です。 |
| DBInstanceId | String | rm-uf6wjk5 ***** |
インスタンスの ID です。 |
例
リクエストの例
http(s):// rds.aliyuncs.com/?Action=RestoreDdrTable
&DBInstanceId=rm-bpxxxxx
&RestoreType=0
&BackupId=279563
&TableMeta=[{"type":"db","name":"testdb1","newname":"testdb1","tables":[{"type":"table","name":"test1","newname":"test1_backup" },{ "type":"table","name":"test2","newname" "test2_backup"}]}]
&<共通リクエストパラメーター>正常に処理された場合のレスポンス例
XML 形式
HTTP/1.1 200 OK
Content-Type:application/xml
<RestoreDdrTableResponse>
<RequestId>75BBF1EF-1E90-4950-BFFB-252D26E8259B</RequestId>
</RestoreDdrTableResponse>JSON 形式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "75BBF1EF-1E90-4950-BFFB-252D26E8259B"
}エラーコード
| HTTP ステータスコード | エラーコード | エラーメッセージ | 説明 |
|---|---|---|---|
| 400 | InvalidRestoreType. フォーマット | 指定された復元タイプは無効です。 | 指定された復元タイプが無効な場合に返されるエラーメッセージ。 有効な復元タイプを指定する必要があります。 |
| 400 | InvalidRestoreTime. フォーマット | 指定された復元時間は無効です。 | RestoreTimeパラメーターの値が無効な場合に返されるエラーメッセージ。 RestoreTimeパラメーターに有効な値を指定する必要があります。 |
| 400 | InvalidParamTableMeta | 無効なパラメーターTableMetaがnullまたはjson形式ではない | TableMetaパラメーターの値が無効な場合に返されるエラーメッセージ。 TableMetaパラメーターに有効な値を指定する必要があります。 |
| 400 | InvalidParamTableMeta.Content | TableMetaに古いdbnameまたは新しいdbnameがない場合は、確認してください | TableMetaパラメーターの値で元のデータベースと新しいデータベースのテーブルが指定されていない場合に返されるエラーメッセージ。 |
| 400 | InvalidParamTableMeta.Duplicate | TableMetaには、他のnewname、commons、またはシステムと重複したdbまたはテーブルがあります | 指定された名前のデータベースとテーブルが新しいインスタンスにすでに存在する場合に返されるエラーメッセージ。 |
| 400 | InvalidSourceRestoreDBName.NotFound | 特定のソース復元dbnameがdbリストに見つかりません | 指定されたデータベースが指定されたデータバックアップファイルに見つからない場合に返されるエラーメッセージ。 |
| 400 | InvalidDBName.Duplicate | 指定された DB 名は、このインスタンスに既に存在します。 | 指定されたデータベースの名前がインスタンスに重複している場合に返されるエラーメッセージ。 指定したデータベースの名前を変更する必要があります。 |
| 400 | InvalidParameters. フォーマット | 指定されたパラメーターは無効です。 | 指定されたパラメーターが無効な場合に返されるエラーメッセージ。 |
| 400 | InvalidAvZone. フォーマット | 指定されたAvZoneは無効です。 | AvZoneパラメーターの値が無効な場合に返されるエラーメッセージ。 |
| 400 | InvalidRegion. フォーマット | 指定されたリージョンは無効です。 | 指定されたリージョンが無効な場合に返されるエラーメッセージ。 |
| 400 | InvalidVpcParameter | 指定されたVPCId VSwitchIdまたはIPAddressまたはTunnelIdは無効です。 | VPCIdおよびVSwitchIdパラメーターの値が無効な場合に返されるエラーメッセージ。 |
| 400 | MissingUserID | リクエストにuser_idパラメーターがありません。 | 指定されたユーザーIDが存在しない場合に返されるエラーメッセージ。 |
| 400 | MissingUID | リクエストにuidパラメーターがありません。 | 使用するアカウントが存在しない場合に返されるエラーメッセージ。 |
| 403 | IncorrectDBInstanceType | 現在のDBインスタンスタイプは、この操作をサポートしていません。 | インスタンスが現在の状態の場合、この操作がサポートされていない場合に返されるエラーメッセージ。 |
| 403 | IncorrectDBInstanceState | 現在のDBインスタンスの状態は、この操作をサポートしていません。 | インスタンスが現在の状態の場合、この操作がサポートされていない場合に返されるエラーメッセージ。 |
| 403 | ChildDBInstanceExists | 現在のDBインスタンスに子インスタンスがありました。 | 読み取り専用インスタンスが元のインスタンスにアタッチされている場合に返されるエラーメッセージ。 |
| 403 | InvalidBackupLogStatus | 現在のバックアップログ有効ステータスは、この操作をサポートしていません。 | ログバックアップ機能が無効になっているため、特定の時点までデータを復元できない場合に返されるエラーメッセージ。 |
| 403 | IncorrectBackupSetMethod | 現在のバックアップセットメソッドは操作をサポートしていません。 | 指定されたデータバックアップファイルを使用して個々のデータベースおよびテーブルを復元できない場合に返されるエラーメッセージ。 |
| 403 | IncorrectBackupSetState | 現在のバックアップセットの状態は、オペレーションに対応していません。 | 指定されたデータバックアップファイルのステータスのため、この操作がサポートされていない場合に返されるエラーメッセージ。 |
| 404 | RestoreType.NotFound | RestoreTypeが見つかりません。 | 指定された復元方法が存在しない場合に返されるエラーメッセージ。 |
| 404 | InvalidBackupSetID.NotFound | 指定されたバックアップセットIDが存在しません。 | 指定されたデータバックアップファイルが存在しない場合に返されるエラーメッセージ。 有効なデータバックアップファイルを指定する必要があります。 |
| 404 | InvalidBackup.NotFound | 使用可能なバックアップはリカバリ時に存在しません。 | 使用可能なデータバックアップファイルがない場合に返されるエラーメッセージ。 |
| 404 | InvalidBinlog.NotFound | 使用可能なbinlogはリカバリ時に存在しません。 | 指定された時点で有効なバイナリログファイルが使用できない場合に返されるエラーメッセージ。 |
| 404 | InvalidDB.NotFound | 指定されたdbが存在しないか、DBステータスがサポートされていません。 | 指定されたデータベースとテーブルが指定されたデータバックアップファイルに見つからない場合に返されるエラーメッセージ。 |
| 404 | InvalidDBInstance.NotFound | 指定されたインスタンスが存在しないか、サポートされていません。 | インスタンスが見つからない、削除されている、または操作をサポートしていない場合に返されるエラーメッセージ。 |
エラーコードリストについては、「API エラーセンター」をご参照ください。