Puede llamar a la operación RecoveryDBInstance para restaurar las bases de datos de una instancia.
Esta operación permite restaurar bases de datos en una instancia nueva o existente. Si desea restaurar bases de datos en una instancia existente, se recomienda usar la operación Copy databases.
Para restaurar bases de datos en una instancia nueva, debe crear dicha instancia y luego restaurar todas las bases de datos o solo algunas específicas.
Si especifica el nombre de una base de datos, únicamente esa base de datos se restaurará en la nueva instancia.
Si no especifica ningún nombre, se restaurarán todas las bases de datos en la nueva instancia.
La operación RecoveryDBInstance solo es compatible con instancias que ejecutan SQL Server 2012 o versiones posteriores.
Depuración
Parámetros de solicitud
| Parámetro | Tipo | Obligatorio | Ejemplo | Descripción |
| Action | String | Sí | RecoveryDBInstance | La operación que desea ejecutar. Establezca el valor en RecoveryDBInstance. |
| DBInstanceClass | String | No | rds.mysql.s2.large | El tipo de la nueva instancia. Para obtener más información, consulte Instance types. |
| DBInstanceStorage | Integer | No | 5 | La capacidad de almacenamiento de la nueva instancia. Unidad: GB. Para obtener más información, consulte Instance types. |
| PayType | String | No | Postpaid | El método de facturación de la nueva instancia. Valores válidos:
|
| InstanceNetworkType | String | No | VPC | El tipo de red de la nueva instancia. Valores válidos:
De forma predeterminada, la nueva instancia usa el mismo tipo de red que la instancia original. |
| DBInstanceId | String | No | rm-xxxxxxxx1 | El ID de la instancia original. Nota
|
| TargetDBInstanceId | String | No | rm-uf6wjk5xxxxxxx | El ID de la instancia de destino. |
| DbNames | String | Sí | Database restoration to a new instance: test1,test2; Database restoration to an existing instance: {"test1":"newtest1","test2":"newtest2"} | El nombre de la base de datos.
|
| BackupId | String | No | 29304**** | El ID del conjunto de copia de seguridad. Puede llamar a la operación DescribeBackups para consultar el ID. Si especifica este parámetro, no es necesario especificar el parámetro DBInstanceId. Nota Debe especificar como mínimo uno de los parámetros BackupId o RestoreTime. |
| RestoreTime | String | No | 2011-06-11T16:00:00Z | El punto en el tiempo al que desea restaurar las bases de datos. Puede seleccionar un momento dentro del período de retención de copias de seguridad. Especifique la hora según el estándar ISO 8601 con el formato yyyy-MM-ddTHH:mm:ssZ. La hora debe estar en UTC. Si especifica este parámetro, también debe especificar el parámetro DBInstanceId. Nota Debe especificar como mínimo uno de los parámetros BackupId o RestoreTime. |
| VPCId | String | No | vpc-xxxxxxxxxxx | El ID de VPC de la nueva instancia. |
| VSwitchId | String | No | vsw-xxxxxxxxxxx | El ID de vSwitch de la nueva instancia. Si especifica más de un ID de vSwitch, sepárelos con comas (,). |
| PrivateIpAddress | String | No | 172.XXX.XXX.69 | La dirección IP interna de la nueva instancia. Esta dirección debe encontrarse dentro del bloque CIDR admitido por el vSwitch especificado. El sistema asigna automáticamente una dirección IP interna a la nueva instancia según los valores de los parámetros VPCId y VSwitchId. |
| UsedTime | String | No | 1 | La duración de la suscripción de la instancia. Valores válidos:
Nota Si establece el parámetro PayType en Prepaid, también debe especificar este parámetro. |
| Period | String | No | Month | La unidad usada para calcular el ciclo de facturación de la nueva instancia. Este parámetro solo surte efecto cuando selecciona el método de facturación por suscripción para la nueva instancia. Valores válidos:
Nota Si establece el parámetro PayType en Prepaid, también debe especificar este parámetro. |
| DBInstanceStorageType | String | No | local_ssd | El tipo de almacenamiento de la nueva instancia. Valores válidos:
|
Parámetros de respuesta
|
Parámetro |
Tipo |
Ejemplo |
Descripción |
|
DBInstanceId |
String |
rm-xxxxxxx |
El ID de la instancia. |
|
RequestId |
String |
EFB6083A-7699-489B-8278-C0CB4793A96E |
El ID de la solicitud. |
|
OrderId |
String |
54325**** |
El ID del pedido. |
Ejemplos
Solicitudes de ejemplo
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
Respuestas exitosas de ejemplo
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 error
|
Código de estado HTTP |
Código de error |
Mensaje de error |
Descripción |
|
400 |
IllegalParameter |
illegal parameter, param is empty. |
El mensaje de error devuelto porque los parámetros especificados no son válidos. |
|
400 |
InvalidRecoveryDbInstance.StorageSize |
The disk space of the new instance cannot be less than that of the current instance |
El mensaje de error devuelto porque el almacenamiento disponible de la nueva instancia debe ser mayor o igual al tamaño total de los datos almacenados en la instancia original. |
|
400 |
DBCountLimitExceeded |
Db count limit exceeded. |
El mensaje de error devuelto porque el número de bases de datos supera el límite máximo. |
|
403 |
Forbidden.SnapshotRecovery |
Snapshot backup does not support partial restore |
El mensaje de error devuelto porque los archivos de copia de seguridad de instantáneas no permiten restaurar solo una parte específica de los datos. |
Para obtener una lista de códigos de error, consulte Service error codes.