CopyDatabaseBetweenInstancesを呼び出して、あるインスタンスから別のインスタンスにデータベースをコピーできます。
CopyDatabaseBetweenInstances操作を呼び出して、特定のデータベースを時点ごとまたはバックアップファイルごとに既存のインスタンスに復元することもできます。 詳細については、「ApsaraDB RDS For SQL Serverインスタンスのデータの復元」をご参照ください。
この API を呼び出す場合、インスタンスは次の要件を満たしている必要があります。
- ソースインスタンスとターゲットインスタンスは同じアカウントに属しています。
- ソースインスタンスとターゲットインスタンスは、同じバージョンのデータベースエンジンを実行します。
- ソースインスタンスとターゲットインスタンスが同じリージョンにあり、異なるゾーンに属している場合がある。 ネットワークタイプは同じでなければなりません。
- ソースインスタンスとターゲットインスタンスには、同じ名前のデータベースがない。
- コピー先インスタンスの使用可能なストレージ容量が、コピーするデータベースのサイズよりも大きいこと。説明 CopyDatabaseBetweenInstances操作は、SQL Server 2012またはSQL Server 2016を実行するApsaraDB RDS for SQL Serverインスタンスにのみ適用できます。 ApsaraDB RDS for MySQLインスタンスの特定のデータベースまたはテーブルを元のインスタンスまたは新しいインスタンスに復元できます。 詳細については、「ApsaraDB RDS For MySQLインスタンスの個々のデータベースとテーブルの復元」をご参照ください。
デバッグ
リクエストパラメーター
項目 | データ型 | 必須/任意 | 例: | 説明 |
---|---|---|---|---|
操作 | String | 必須 | CopyDatabaseBetweenInstances | 実行したい操作。 値をCopyDatabaseBetweenInstancesに設定します。 |
DBInstanceId | String | 必須 | rm-uf6wjk5xxxxxxx | ソースインスタンスの ID。 |
DbNames | String | 必須 | {"test1":"test2"} | コピーするデータベースの名前。 形式: {"ソースインスタンスデータベース名":"ターゲットインスタンスデータベース名"} |
TargetDBInstanceId | String | 必須 | rm-ut5ajk3xxxxxxx | ターゲットインスタンスのID。ソースインスタンスのIDとは異なる必要があります。 |
BackupId | String | 任意 | 1065238746521 | データベースをコピーするバックアップファイルのID。 バックアップファイルに基づいてデータベースをコピーする場合、DescribeBackups操作を呼び出してバックアップファイルIDを取得できます。 説明 BackupIdまたはRestoreTimeパラメーターのいずれかを指定する必要があります。 |
RestoreTime | String | 任意 | 2011-06-11T16:00:00Z | システムがデータベースをコピーする時点。 バックアップ保持期間内の時点を選択できます。 ISO 8601標準のyyyy-MM-dd T HH:mm:ss Z形式で時刻を指定します。 時刻はUTCである必要があります。 説明 BackupIdまたはRestoreTimeパラメーターのいずれかを指定する必要があります。 |
SyncUserPrivilege | String | 任意 | いいえ | ユーザーと権限をコピーするかどうかを指定します。
デフォルト値: NO。 |
レスポンスパラメーター
項目 | データ型 | 例: | 説明 |
---|---|---|---|
DBInstanceId | String | rm-uf6wjk5xxxxxxxxxx | インスタンスの ID です。 |
RequestId | String | 803D11AF-C370-465B-AB46-CB3A642DC303 | リクエストの ID です。 |
例
リクエストの例
http(s):// rds.aliyuncs.com/?Action=CopyDatabaseBetweenInstances
&DBInstanceId=rm-uf6wjk5xxxxxxx
&TargetDBInstanceId=rm-ut5ajk3xxxxxxx
&DbNames={"test1":"test2"}
&<共通リクエストパラメーター>
正常に処理された場合のレスポンス例
XML
形式
<CopyDatabaseBetweenInstancesResponse>
<RequestId>803D11AF-C370-465B-AB46-CB3A642DC303</RequestId>
</CopyDatabaseBetweenInstancesResponse>
JSON
形式
{
"RequestId": "803D11AF-C370-465B-AB46-CB3A642DC303"
}
エラーコード
HTTP ステータスコード | エラーコード | エラーメッセージ | 説明 |
---|---|---|---|
403 | StorageLimitExceeded | DBインスタンスの許可ストレージを超えています。 | インスタンスのディスク容量がコピーするデータベースのサイズより小さい場合に返されるエラーメッセージ。 |
エラーコードリストについては、「API エラーセンター」をご参照ください。