Use a operação RecoveryDBInstance para restaurar os bancos de dados de uma instância.
Essa operação permite restaurar bancos de dados em uma nova instância ou em uma instância existente. Para restaurar bancos de dados em uma instância existente, recomendamos usar a operação Copiar bancos de dados.
Para restaurar bancos de dados em uma nova instância, crie a instância primeiro e restaure bancos específicos ou todos os bancos de dados nela.
Se você especificar o nome de um banco de dados, apenas esse banco será restaurado na nova instância.
Se nenhum nome for especificado, todos os bancos de dados serão restaurados na nova instância.
A operação RecoveryDBInstance é compatível apenas com instâncias que executam SQL Server 2012 ou versões posteriores.
Depuração
Parâmetros de solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Sim | RecoveryDBInstance | Operação a ser executada. Defina o valor como RecoveryDBInstance. |
| DBInstanceClass | String | Não | rds.mysql.s2.large | Tipo da nova instância. Para mais informações, consulte Tipos de instância. |
| DBInstanceStorage | Integer | Não | 5 | Capacidade de armazenamento da nova instância. Unidade: GB. Para mais informações, consulte Tipos de instância. |
| PayType | String | Não | Postpaid | Método de faturamento da nova instância. Valores válidos:
|
| InstanceNetworkType | String | Não | VPC | Tipo de rede da nova instância. Valores válidos:
Por padrão, a nova instância usa o mesmo tipo de rede da instância original. |
| DBInstanceId | String | Não | rm-xxxxxxxx1 | ID da instância original. Nota
|
| TargetDBInstanceId | String | Não | rm-uf6wjk5xxxxxxx | ID da instância de destino. |
| DbNames | String | Sim | Restauração de banco de dados para uma nova instância: test1,test2; Restauração de banco de dados para uma instância existente: {"test1":"newtest1","test2":"newtest2"} | Nome do banco de dados.
|
| BackupId | String | Não | 29304**** | ID do conjunto de backup. Chame a operação DescribeBackups para consultar o ID. Se você especificar este parâmetro, não precisará especificar o parâmetro DBInstanceId. Nota Especifique pelo menos um dos parâmetros BackupId ou RestoreTime. |
| RestoreTime | String | Não | 2011-06-11T16:00:00Z | Ponto no tempo para o qual deseja restaurar os bancos de dados. Selecione um momento dentro do período de retenção de backup. Especifique a hora no padrão ISO 8601, no formato aaaa-MM-ddTHH:mm:ssZ. A hora deve estar em UTC. Se você especificar este parâmetro, também deverá especificar o parâmetro DBInstanceId. Nota Especifique pelo menos um dos parâmetros BackupId ou RestoreTime. |
| VPCId | String | Não | vpc-xxxxxxxxxxx | ID da VPC da nova instância. |
| VSwitchId | String | Não | vsw-xxxxxxxxxxx | ID do vSwitch da nova instância. Se você especificar mais de um ID de vSwitch, separe-os por vírgulas (,). |
| PrivateIpAddress | String | Não | 172.XXX.XXX.69 | Endereço IP interno da nova instância. Esse endereço 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 | String | Não | 1 | Duração da assinatura da instância. Valores válidos:
Nota Se o parâmetro PayType for definido como Prepaid, especifique também este parâmetro. |
| Period | String | Não | Month | Unidade usada para calcular o ciclo de faturamento da nova instância. Este parâmetro entra em vigor apenas quando o método de faturamento por assinatura é selecionado para a nova instância. Valores válidos:
Nota Se o parâmetro PayType for definido como Prepaid, especifique também este parâmetro. |
| DBInstanceStorageType | String | Não | local_ssd | Tipo de armazenamento da nova instância. Valores válidos:
|
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
DBInstanceId |
String |
rm-xxxxxxx |
ID da instância. |
|
RequestId |
String |
EFB6083A-7699-489B-8278-C0CB4793A96E |
ID da solicitação. |
|
OrderId |
String |
54325**** |
ID do pedido. |
Exemplos
Exemplos de solicitações
http(s)://rds.aliyuncs.com/?Action=RecoveryDBInstance
&DBInstanceClass=rds.mysql.s2.large
&DBInstanceStorage=5
&PayType=Postpaid
&InstanceNetworkType=VPC
&DBInstanceId=rm-xxxxxxxx1
&TargetDBInstanceId=rm-uf6wjk5xxxxxxx
&DbNames=Database restoration to a new instance: test1,test2; Database restoration to an existing instance: {"test1":"newtest1","test2":"newtest2"}
&BackupId=29304****
&RestoreTime=2011-06-11T16:00:00Z
&VPCId=vpc-xxxxxxxxxxx
&VSwitchId=vsw-xxxxxxxxxxx
&PrivateIpAddress=172.XXX.XXX.69
&UsedTime=1
&Period=Month
&DBInstanceStorageType=local_ssd
&Common request parameters
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<RecoveryDBInstanceResponse>
<DBInstanceId>rm-xxxxxxx</DBInstanceId>
<RequestId>EFB6083A-7699-489B-8278-C0CB4793A96E</RequestId>
<OrderId>54325****</OrderId>
</RecoveryDBInstanceResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"DBInstanceId" : "rm-xxxxxxx",
"RequestId" : "EFB6083A-7699-489B-8278-C0CB4793A96E",
"OrderId" : "54325****"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|
400 |
IllegalParameter |
illegal parameter, param is empty. |
Mensagem retornada porque os parâmetros especificados são inválidos. |
|
400 |
InvalidRecoveryDbInstance.StorageSize |
The disk space of the new instance cannot be less than that of the current instance |
Mensagem retornada porque o armazenamento disponível da nova instância deve ser maior ou igual ao tamanho total dos dados armazenados na instância original. |
|
400 |
DBCountLimitExceeded |
Db count limit exceeded. |
Mensagem retornada porque o número de bancos de dados excedeu o limite superior. |
|
403 |
Forbidden.SnapshotRecovery |
Snapshot backup does not support partial restore |
Mensagem retornada porque os arquivos de backup de snapshot não podem ser usados para restaurar apenas uma parte específica dos dados. |
Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.