All Products
Search
Document Center

ApsaraDB RDS:CopyDatabaseBetweenInstances

Last Updated:May 29, 2023

Replicates databases from one instance to another.

Operation Description

You can also call this operation to restore specific databases to an existing instance by point in time or backup set. For more information, see Restore the data of an ApsaraDB RDS for SQL Server instance.

Before you call this operation, make sure that the following requirements are met:

  • The source and destination instances belong to the same account.
  • The source and destination instances run the same version of database engine.
  • The source and destination instances reside in the same region and use the same network type. The instances can reside in different zones.
  • The source and destination instances do not have databases whose names are the same.
  • The available storage of the destination instance is larger than the total size of the databases that you want to replicate from the source instance.
NoteThis operation is supported only for instances that run SQL Server 2012 and later.

Authorization information

The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:

  • Operation: the value that you can use in the Action element to specify the operation on a resource.
  • Access level: the access level of each operation. The levels are read, write, and list.
  • Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
    • The required resource types are displayed in bold characters.
    • If the permissions cannot be granted at the resource level, All Resources is used in the Resource type column of the operation.
  • Condition Key: the condition key that is defined by the cloud service.
  • Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
OperationAccess levelResource typeCondition keyAssociated operation
rds:CopyDatabaseBetweenInstancesWRITE
  • RDS
    acs:rds:*:{#accountId}:dbinstance/*
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
DBInstanceIdstringYes

The ID of the source instance.

rm-uf6wjk5xxxxxxx
TargetDBInstanceIdstringYes

The ID of the destination instance, which must differ from the ID of the source instance.

rm-ut5ajk3xxxxxxx
DbNamesstringYes

The names of the databases. Format: {"Original database name 1":"New database name 1","Original database name 2":"New database name 2"}.

{"test1":"newtest1","test2":"newtest2"}
BackupIdstringNo

The ID of the backup set by which you want to restore databases of the source instance. You can call the DescribeBackups operation to obtain the ID of the backup set.

NoteYou must specify one of BackupId and RestoreTime.
106523874****
RestoreTimestringNo

The point in time when the system replicates databases. You can select a point in time within the backup retention period. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

NoteYou must specify one of BackupId and RestoreTime.
2011-06-11T16:00:00Z
SyncUserPrivilegestringNo

Specifies whether to copy users and permissions.

  • YES: replicates users and permissions. If the destination instance has a user whose name is the same as a user in the source instance, the permissions of the user in the source instance will also be granted to the user in the destination instance after you replicate user permissions.
  • NO: does not replicate users and permissions.

Default value: NO.

NO

Response parameters

ParameterTypeDescriptionExample
object

The response parameters.

RequestIdstring

The ID of the request.

803D11AF-C370-465B-AB46-CB3A642DC303

Examples

Sample success responses

JSONformat

{
  "RequestId": "803D11AF-C370-465B-AB46-CB3A642DC303"
}

Error codes

HTTP status codeError codeError messageDescription
400InvalidBackupSetIDInvalid backup set id.The backup set does not exist. You can call the DescribeBackups operation to query existing backup sets.
400DBCountLimitExceededDb count limit exceeded.The number of databases is exceeded.
400BackupRestoreNotSupported.BasicHABasic instances cannot be restored to high availability instances, and high availability instances cannot be restored to basic instances.You cannot restore data from an RDS instance in the Basic Edition to an RDS instance in the High-availability Edition and vice versa.
400BackupRestoreNotSupported.HADedicatedAlwaysOnHigh availability instances cannot be restored to dedicated cluster instances or AlwaysOn instances.The operation failed. The data of an RDS instance that runs the RDS High-availability Edition cannot be restored to an RDS instance that is deployed in a dedicated cluster or runs the RDS Enterprise Edition.
400BackupRestoreNotSupported.ShareDedicatedAlwaysOnShared instances cannot be restored to dedicated cluster instances, AlwaysOn instances, or high availability instances.-
400OperationDenied.RestoreTimeThe instance with snapshot backup enabled can only be restored to the instance with snapshot backup enabled.You can only restore to snapshot backup-enabled instances for instances that have enabled snapshot backup.
400OperationDenied.SnapshotBackupSetSnapshot backup set can only be restored to the instance with snapshot backup enabled.You can only restore to snapshot backup-enabled instances for instances that have enabled snapshot backup and whose backup set type is snapshot.
400CanNotCopyDBHasTDEEnabledThe source database has enabled the TDE feature. You cannot copy it to another instance.TDE is enabled for the source RDS instance. Therefore, the data of the source RDS instance cannot be replicated to a different RDS instance.
400InvalidBackupDBNames.NotFoundThe specified BackupDBNames is not found.The operation failed. The instance name is not specified.
400InvalidBackupDBNames.MalformedThe specified backup database is not valid.The operation failed. The database name is invalid.
400InvalidDBName.FormatSpecified DB name is not valid.The database name is invalid. Specify a valid name. The name can be up to 16 characters in length and can contain lowercase letters, digits, and underscores (_). The name must start with a lowercase letter and end with a lowercase letter or a digit.
400InvalidDBInstanceName.NotFoundInvalid DBInstanceId NotFound.The instance ID cannot be found.
400EngineNotSupportedThe engine does not support the operation.The operation is not supported for the database engine that is run on the RDS instance.
400InvalidTargetDBInstanceName.FormatSpecified Target DB instance name is not valid.The name of the destination instance is invalid.
400MasterDBInstanceState.NotSupportThe Master instance state does not support this operation.The operation failed. The RDS instance is not in a ready state.
400TargetInstanceEngineNotSupportedThe specified Engine cannot be supported the operation.The engine does not support the operation.
400InvalidInstancesRegion.MalformedThe instance region is not the same as the target instance region.The destination instance resides in a different region from the source instance.
400InvalidStartTime.FormatThe specified parameter "StartTime" is not valid.The start time is invalid. Specify the time in the GMT standard in the YYYY-MM-DDThh:mmZ format. For example, you can set the start time to 2012-06-11T15:00Z in the DescribeDBInstancePerformance operation and set the start time to 2011-06-11T16:00Z in the DescribeErrorLogs operation.
400InvalidEndTime.FormatThe specified parameter "EndTime" is not valid.The operation failed. The end time is invalid. Specify the time in the GMT standard in the YYYY-MM-DDThh:mmZ format. Example: 2012-06-11T15:00Z.
400InvalidParameterCombinationThe end time must be greater than the start timeThe end time must be later than the start time.
400InvalidBackupSetLocation.FormatSpecified backup set location is not valid.-
400InvalidCrossRegionTransCross region instance trans is not supported-
400ErrorParametersConflictParameter BackupsetID and restoretime can only exist one.-
400InvalidDBName.NotFoundSpecified DB name does not exist.The database name cannot be found. Enter a valid database name.
400InvalidDBName.DuplicateSpecified DB name already exists in the This instance.A database with the same name has been created on the RDS instance. Specify a different name.
400ReadDBInstanceNotSupportThe operation is not permitted due to type of the instance.-
400InvalidRecoveryDbInstance.StorageSizeThe disk space of the new instance cannot be less than that of the current instanceThe operation failed. The available storage space of the new RDS instance must be greater than or equal to the total size of data stored in the original RDS instance.
400InvalidRecoveryDBNames.FormatThe specified parameter DBNames is not valid.The instance name is invalid. Check the instance name.
400InvalidBackupIdOrRestoreTime.NotFoundThe specified parameter BackupId or RestoreTime is not valid.The operation failed. The values of the BackupId and RestoreTime parameters are invalid.
400Forbidden.RegionNotFoundThe provided RegionId does not exist in our record.The operation failed. The region ID cannot be found.
400ImageNotFoundThe specified Image is disabled or is deleted.-
400InvalidZone.NotSupportedForStorageTypeThe specified zone is closed or invalid for Specified DBInstanceStorageType.-
400InvalidEngineOrEngineVersionThe specified params engine or engineVersion should not be null.-
400InvalidGeneralGroupNameOrGdnInstanceNameThe specified params generalGroupName or gdnInstanceName should not be null.-
400InvalidVSwitchId.NotFoundSpecified virtual switch is not found in specified VPC.No vSwitch is available in the VPC.
400CDDC.TargetHostIDNotAvailableThe target host ID is not available.The host is unavailable. Specify a different host.
400CDDC.AvailableHostsNotEnoughInZoneNot enough available hosts are in the target zone.-
400ReadOnlyInstanceNotSupportSpecified ReadOnly Instance not support this operation.Read-only instances do not support the operation.
400InvalidShareDbInstanceClassNotSupportThe current instance classType is not support operation.This operation is not supported for the specified instance type.
400InvalidQuantity.NotSupportedThe specified instance quantity is not supported.The number of RDS instances exceeds the upper limit. Check the number of RDS instances.
400IncorrectMasterDBInstanceStateMaster instance state does not support this operation.-
400InvalidDBInstance.ReadDBInstanceExceededCurrent DB Instance exceeding the allowed amount of read instance.The number of read-only instances exceeds the upper limit. Adjust the number of read-only instances. A primary ApsaraDB RDS for MySQL instance with more than 64 GB memory supports a maximum of 10 read-only instances. An ApsaraDB RDS for MySQL with less than 64 GB memory supports a maximum of five read-only instances.
400InvalidEngineVersion.MalformedSpecified engine version is not valid.The database engine version is invalid. Check the database engine version and try again.
400InvalidEssdStorageSizeThe cloud ESSD storage size is invalid.The storage size of cloud disks is invalid. Check the storage size.
400IncorrectInstanceNetworkTypeThe specified parameter InstanceNetworkType is not valid.-
400AtLeastTwoVSwitchParamExistsThe specified params(Vswitchs) at least two.At least two Vswitchs parameters must be specified. Each Vswitchs parameter specifies a vSwitch in a zone.
400InvalidIzNo.NotSupportedSpecified VPC zone is not supported.The zone of the VPC differs from the zone of the RDS instance.
403StorageLimitExceededExceeding the allowed Storage of DB instance.The disk usage exceeds the upper limit. Free your disk space.
403InvalidTempInstance.NotSupportThe temp db Instance is not support.The instance is locked.
403IncorrectDBInstanceStateThe current database instance state does not support the operation.The operation failed. The RDS instance is not running.
403IncorrectDBInstanceTypeCurrent DB instance engine and type does not support operations.The operation failed. The operation is not supported for the database engine of the RDS instance.
403Forbidden.SnapshotRecoverySnapshot backup does not support partial restoreThe operation failed. Snapshot backup files cannot be used to restore only a specific part of data.
403OperationDenied.ResourceSpecified DB instance class or storage is not available in all Availability Zones.Insufficient resources. Try again with a different instance type or storage size.
403ReadonlyDBInstanceStorageExceededYou can not create the order with the db instance because The masterInstance storage value exceeding the readonlyInstance storage value.The primary instance storage value exceeds the read-only instance storage value. You cannot use the database instance to create an order.
403MasterDBInstanceClassNotSupportYou can not create the readonly instance with the master instance class does not support.The operation failed. The current primary instance class does not support creating read-only instances.
403ReadonlyDBInstanceClassNotSupportYou can not create the readonly instance with the instance class does not support.The operation failed. The current instance class does not support creating read-only instances.
403ReadonlyDBInstanceClassLowerThanMasterInstanceThe readonly instance db instance class are lower than master instance db instance class.The read-only instance has lower specifications than the primary instance.
403InvalidSwitchType.MalformedThe specified parameter InvalidSwitchType is not valid.The value of the InvalidSwitchType parameter is invalid.
403UnsupportedCopyDbHighAvailabilityToBasicReplicate Database from RDS Category:HighAvailability to RDS Category:Basic is not supported.-
403InvalidInstanceVersionSource instance version is greater than the target instance version.-
403UnsupportedCopyDbShareToHighAvailabilityReplicate Database from RDS Category:Share to RDS Category:HighAvailability is not supported.-
403UnsupportedCopyDbAlwaysOnToBasicReplicate Database from RDS Category:AlwaysOn to RDS Category:Basic is not supported.-
403UnsupportedCopyDbBasicToShareReplicate Database from RDS Category:Basic to RDS Category:Share is not supported.-
403UnsupportedCopyDbAlwaysOnToHighAvailabilityReplicate Database from RDS Category:AlwaysOn to RDS Category:HighAvailability is not supported.-
403UnsupportedCopyDbShareToBasicReplicate Database from RDS Category:Share to RDS Category:Basic is not supported.-
403UnsupportedCopyDbHighAvailabilityToShareReplicate Database from RDS Category:HighAvailability to RDS Category:Share is not supported.-
403UnsupportedCopyDbShareToAlwaysOnReplicate Database from RDS Category:Share to RDS Category:AlwaysOn is not supported.-
403UnsupportedCopyDbAlwaysOnToShareReplicate Database from RDS Category:AlwaysOn to RDS Category:Share is not supported.-
403InvalidParamTableMeta.RestoreTimeThe specified restore time cannot be covered by the existing backup chain. Please try specifying a different restore time.-
404InvalidDBInstance.NotFoundThe specified instance does not exist or is not supported.The RDS instance cannot be found. Check the ID or name of the RDS instance.
404InvalidInstanceStorageType.NotFoundThe specified DBInstanceStorageType is not found.You must specify the InstanceStorageType parameter.
404InvalidRegion.NotFoundSpecified Region does not exist in the RDSThe region ID is invalid.
404IncorrectVswitchIdThe specified parameter VSwitchId is not valid.The vSwitch ID is invalid.
404InsufficientResourceCapacityCurrent cluster resources are insufficient. Try again later.Current cluster resources are insufficient. Try again later.

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2023-03-24The error codes of the API operation change.
Change itemChange content
Error CodesThe error codes of the API operation change.
    Error Codes 400 change
    delete Error Codes: 403
    delete Error Codes: 404
2022-10-28The error codes of the API operation change.
Change itemChange content
Error CodesThe error codes of the API operation change.
    Error Codes 400 change
    delete Error Codes: 403
2022-07-19The error codes of the API operation change.
Change itemChange content
Error CodesThe error codes of the API operation change.
    Error Codes 400 change
    delete Error Codes: 403