Chame a operação CloneDBInstance para restaurar os dados de uma instância original em uma nova instância. A nova instância é denominada instância clonada.
Antes de chamar esta operação, verifique se os seguintes requisitos foram atendidos:
A instância original está no estado Running.
A instância original não possui tarefas de migração em andamento.
O recurso de backup de log está ativado na instância original para dar suporte à recuperação point-in-time.
Se desejar clonar a instância original usando conjuntos de backup, a instância original deve ter pelo menos um conjunto de backup.
O ApsaraDB RDS permite clonar uma instância usando as credenciais de um usuário RAM. Certifique-se de que o usuário RAM tenha as permissões necessárias para clonar uma instância. Para obter mais informações, consulte
Use RAM to manage ApsaraDB RDS permissions
.
Observe as seguintes informações:
A nova instância possui as mesmas configurações de lista de permissões de IP, SQL Explorer (SQL Audit), limiar de alertas, backup e parâmetros que a instância original.
As informações de conta e os dados da nova instância são idênticos às informações de conta e aos dados indicados pelo arquivo de backup ou pelo ponto no tempo usado para a restauração da instância original.
Debugging
Parâmetros de requisição
| Parameter | Type | Required | Example | Description |
| Action | String | No | CloneDBInstance | A operação a ser executada. Defina o valor como CloneDBInstance. |
| RegionId | String | No | cn-hangzhou | O ID da região da nova instância. Chame a operação DescribeRegions para consultar a lista de regiões mais recente. |
| ZoneId | String | No | cn-hangzhou-b | O ID da zona da instância primária. Chame a operação DescribeRegions para consultar a lista de zonas mais recente. Nota O valor padrão deste parâmetro é o ID da zona à qual a instância original pertence. |
| DBInstanceClass | String | No | mysql.n1.micro.1 | O tipo de instância da nova instância. Para obter mais informações, consulte Primary ApsaraDB RDS instance types. Nota O valor padrão deste parâmetro é o tipo de instância da instância primária. |
| DBInstanceStorage | Integer | No | 1000 | A capacidade de armazenamento da nova instância. Unidade: GB. A capacidade de armazenamento aumenta em incrementos de 5 GB. Para obter mais informações, consulte Primary ApsaraDB RDS instance types. Nota O valor padrão deste parâmetro é a capacidade de armazenamento da instância primária. |
| DbNames | String | No | test1,test2 | O nome do banco de dados. Ao especificar mais de um banco de dados, o valor deste parâmetro segue o formato: |
| PayType | String | No | Postpaid | O método de faturamento da nova instância. Valores válidos:
|
| InstanceNetworkType | String | No | VPC | O tipo de rede da nova instância. Valores válidos:
Nota O valor padrão deste parâmetro é o tipo de rede da instância primária. |
| DBInstanceId | String | No | rm-uf6wjk5xxxxxxxxxx | O ID da instância. |
| BackupId | String | No | 902**** | O ID do conjunto de backup. Chame a operação DescribeBackups para consultar os conjuntos de backup. Nota Especifique pelo menos um dos parâmetros BackupId e RestoreTime. |
| RestoreTime | String | No | 2011-06-11T16:00:00Z | O ponto no tempo para o qual os dados serão restaurados. O ponto no tempo deve estar dentro do período de retenção de backup especificado. Informe a hora no padrão ISO 8601, no formato yyyy-MM-ddTHH:mm:ssZ. O horário deve estar em UTC. Nota Especifique pelo menos um dos parâmetros BackupId e RestoreTime. |
| VPCId | String | No | vpc-uf6f7l4fg90xxxxxxxxxx | O ID do VPC ao qual a nova instância pertence. Nota O VPC deve pertencer à região especificada. |
| VSwitchId | String | No | vsw-uf6adz52c2pxxxxxxxxxx | O ID do vSwitch. O vSwitch deve pertencer à zona especificada pelo parâmetro ZoneId.
|
| PrivateIpAddress | String | No | 172.XX.XXX.69 | O endereço IP interno da nova instância, que deve estar dentro do bloco CIDR compatível com o vSwitch especificado. O sistema atribui automaticamente um endereço IP interno à nova instância com base nos valores dos parâmetros VPCId e VSwitchId. |
| UsedTime | Integer | No | 1 | A duração da assinatura da nova instância.
Nota Ao definir o parâmetro PayType como Prepaid, especifique o parâmetro UsedTime. |
| Period | String | No | Year | A unidade usada para calcular o ciclo de faturamento da nova instância. Valores válidos:
Nota Ao definir o parâmetro PayType como Prepaid, especifique o parâmetro Period. |
| Category | String | No | HighAvailability | A edição RDS da nova instância. Valores válidos:
|
| ZoneIdSlave1 | String | No | cn-hangzhou-c | O ID da zona da instância secundária. Quando o parâmetro ZoneIdSlave1 receber o mesmo valor que o parâmetro ZoneId, é adotado o método de implantação em zona única. Quando o parâmetro ZoneIdSlave1 receber um valor diferente do parâmetro ZoneId, é adotado o método de implantação em múltiplas zonas. |
| ZoneIdSlave2 | String | No | cn-hangzhou-d | O ID da zona da instância logger. Quando o parâmetro ZoneIdSlave2 receber o mesmo valor que o parâmetro ZoneId, é adotado o método de implantação em zona única. Quando o parâmetro ZoneIdSlave2 receber um valor diferente do parâmetro ZoneId, é adotado o método de implantação em múltiplas zonas. |
| DBInstanceStorageType | String | No | cloud_essd | O tipo de armazenamento da nova instância. Valores válidos:
|
| RestoreTable | String | No | 1 | Indica se os bancos de dados e tabelas especificados serão restaurados. O valor 1 indica que os bancos de dados e tabelas especificados serão restaurados. Caso não queira restaurar os bancos de dados ou tabelas especificados, não informe este parâmetro. |
| TableMeta | String | No | [{"type":"db","name":"testdb1","newname":"testdb1_new","tables":[{"type":"table","name":"testdb1table1","newname":"testdb1table1_new"}]}] | As informações sobre os bancos de dados e tabelas a serem restaurados. Sintaxe:
|
| DedicatedHostGroupId | String | No | dhg-7a9xxxxxxxx | O ID do cluster dedicado ao qual a nova instância pertence. |
| BackupType | String | No | FullBackup | O tipo de backup. Valores válidos:
|
| DeletionProtection | Boolean | No | true | Indica se o recurso de proteção contra exclusão será ativado para a nova instância. Valores válidos:
Valor padrão: false. |
| AutoPause | Boolean | No | true | Indica se o recurso de inicialização e parada automáticas será ativado para a instância serverless. Com esse recurso ativo, se nenhuma conexão for estabelecida com a instância dentro de 10 minutos, ela será suspensa. Quando uma conexão for estabelecida, a instância será retomada automaticamente. Valores válidos:
|
| MaxCapacity | double | No | 8 | O número máximo de RDS Capacity Units (RCUs). |
| MinCapacity | double | No | 0.5 | O número mínimo de RCUs. |
| SwitchForce | Boolean | No | false | Indica se o recurso de dimensionamento forçado será ativado para a instância serverless. Na maioria dos casos, o ApsaraDB RDS dimensiona automaticamente as RCUs de uma instância serverless em tempo real com base nas necessidades do negócio. Em situações raras, o dimensionamento não ocorre em tempo real. Ative o recurso de dimensionamento forçado para forçar o aumento ou a redução das RCUs da instância. Valores válidos:
|
Parâmetros de resposta
|
Parameter |
Type |
Example |
Description |
|
DBInstanceId |
String |
rm-uf6wjk5xxxxxxx |
O ID da instância. |
|
RequestId |
String |
1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC |
O ID da requisição. |
|
OrderId |
String |
100789370**** |
O ID do pedido. |
Exemplos
Exemplos de requisição
http(s)://rds.aliyuncs.com/?Action=CloneDBInstance
&RegionId=cn-hangzhou
&ZoneId=cn-hangzhou-b
&DBInstanceClass=mysql.n1.micro.1
&DBInstanceStorage=1000
&DbNames=test1,test2
&PayType=Postpaid
&InstanceNetworkType=VPC
&DBInstanceId=rm-uf6wjk5xxxxxxxxxx
&BackupId=902****
&RestoreTime=2011-06-11T16:00:00Z
&VPCId=vpc-uf6f7l4fg90xxxxxxxxxx
&VSwitchId=vsw-uf6adz52c2pxxxxxxxxxx
&PrivateIpAddress=172.XX.XXX.69
&UsedTime=1
&Period=Year
&Category=HighAvailability
&ZoneIdSlave1=cn-hangzhou-c
&ZoneIdSlave2=cn-hangzhou-d
&DBInstanceStorageType=cloud_essd
&RestoreTable=1
&TableMeta=[{"type":"db","name":"testdb1","newname":"testdb1_new","tables":[{"type":"table","name":"testdb1table1","newname":"testdb1table1_new"}]}]
&DedicatedHostGroupId=dhg-7a9xxxxxxxx
&BackupType=FullBackup
&DeletionProtection=true
&ServerlessConfig={"AutoPause":true,"MaxCapacity":8.0,"MinCapacity":0.5,"SwitchForce":false}
&Common request parameters
Exemplos de resposta bem-sucedida
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<CloneDBInstanceResponse>
<DBInstanceId>rm-uf6wjk5xxxxxxx</DBInstanceId>
<RequestId>1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC</RequestId>
<OrderId>100789370****</OrderId>
</CloneDBInstanceResponse>
JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"DBInstanceId" : "rm-uf6wjk5xxxxxxx",
"RequestId" : "1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC",
"OrderId" : "100789370****"
}
Códigos de erro
|
HTTP status code |
Error code |
Error message |
Description |
|
400 |
InvalidAvZone.Format |
Specified AvZone is not valid. |
O valor do parâmetro ZoneID é inválido. |
|
400 |
InvalidAvZone.NotSupport |
Specified availableArea multiZone does not support in RDS. |
O valor especificado para o parâmetro availableArea multiZone não é compatível com o ApsaraDB RDS. |
|
400 |
CannotDecreaseEssdPerfLevel |
cannot decrease cloud essd performance level. |
A alteração do tipo de armazenamento não é permitida. O tipo de armazenamento de uma instância que executa SQL Server com SSDs padrão pode ser alterado apenas para ESSDs. O tipo de armazenamento de uma instância que executa SQL Server com SSDs locais pode ser alterado para SSDs padrão ou ESSDs. |
|
400 |
CannotDecreaseEssdPerfLevel |
invalid cloud essd storage size. |
O valor do parâmetro DBInstanceStorage é inválido. |
|
400 |
InvalidIPAddress.Conflict |
IP address conflict. |
Os endereços IP estão em conflito. |
|
400 |
CDDC.AvailableHostsNotEnoughInZone |
Not enough available hosts are in the target zone. |
Nenhum host está disponível na zona especificada. Crie um host na zona e tente novamente. |
|
400 |
InvalidInstanceLevel.DiskType |
Specified instance level not support request disk type |
O tipo de instância especificado não é compatível com o tipo de armazenamento informado. |
|
400 |
InvalidRecoveryDbInstance.StorageType |
The disk local_ssd can not clone to cloud disk type |
Não é possível restaurar os dados de uma instância que usa SSDs locais em uma instância que usa SSDs padrão ou ESSDs. |
|
400 |
InvalidRecoveryDbInstance.StorageSize |
The disk space of the new instance cannot be less than that of the current instance |
O armazenamento disponível da nova instância deve ser maior ou igual ao tamanho total dos dados armazenados na instância original. |
|
403 |
IncorrectMinorVersion |
Current engine minor version does not support operations. |
Esta operação não é compatível com a versão secundária atual do mecanismo. |
|
403 |
IncorrectCharacterType |
Current DB instance character type does not support this operation. |
Esta operação não é compatível com o tipo de caractere da instância atual. |
Para obter a lista de códigos de erro, consulte Códigos de erro do serviço.