Chame a operação RestoreDdrTable para restaurar os dados de uma instância do ApsaraDB RDS em uma instância existente entre regiões.
Antes de chamar esta operação, chame a operação CheckCreateDdrDBInstance para verificar se é possível restaurar os dados da instância source a partir de um backup entre regiões.
Antes de chamar esta operação, verifique se os seguintes pré-requisitos foram atendidos:
A instância source possui um backup entre regiões criado após a ativação da restauração de bancos de dados ou tabelas individuais.
Para restaurar dados de um ponto específico no tempo, ative o recurso de backup de log na instância source.
Os nomes a serem usados para as tabelas restauradas não existem na instância de destino.
-
A instância source executa um dos seguintes mecanismos de banco de dados:
MySQL. Para obter mais informações, consulte Back up an ApsaraDB RDS for MySQL instance across regions.
SQL Server. Para obter mais informações, consulte Back up an ApsaraDB RDS for SQL Server instance across regions.
PostgreSQL. Para obter mais informações, consulte Back up an ApsaraDB RDS for PostgreSQL instance across regions.
Depuração
Parâmetros da solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Yes | RestoreDdrTable | A operação a ser executada. defina o valor como RestoreDdrTable. |
| DBInstanceId | String | Yes | rm-bpxxxxx | O id da instância source. |
| RegionId | String | No | cn-hangzhou | O id da região da instância de destino. Chame a operação DescribeRegions para consultar a lista de regiões mais recente. |
| ClientToken | String | No | ETnLKlblzczshOTUbOCzxxxxxxxxxx | O token de cliente usado para garantir a idempotência da solicitação. Use o cliente para gerar o valor, garantindo que o token gerado seja exclusivo para diferentes solicitações. O token pode conter apenas caracteres ASCII e não pode exceder 64 caracteres. |
| RestoreType | String | Yes | 0 | O método de restauração a ser usado. Valores válidos:
Valor padrão: 0. |
| BackupId | String | No | 279563 | O id do backup entre regiões a ser usado. Chame a operação DescribeCrossRegionBackups para consultar o id do backup entre regiões. Nota Se definir o parâmetro RestoreType como 0, especifique também o parâmetro BackupId. |
| RestoreTime | String | No | 2020-04-25T16:00:00Z | O ponto no tempo para o qual os dados serão restaurados. O ponto especificado deve ser anterior à hora atual. Especifique a hora no padrão ISO 8601, no formato aaaa-MM-ddTHH:mm:ssZ. A hora deve estar em UTC. Nota Se definir o parâmetro RestoreType como 1, especifique também o parâmetro RestoreTime. |
| SourceRegion | String | No | cn-beijing | O id da região da instância source cujos dados serão restaurados para um ponto no tempo. Nota Se definir o parâmetro RestoreType como 1, especifique também o parâmetro SourceRegion. |
| SourceDBInstanceName | String | No | rm-bpxxxxx | O id da instância source cujos dados serão restaurados para um ponto no tempo. Nota Se definir o parâmetro RestoreType como 1, especifique também o parâmetro SourceDBInstanceName. |
| TableMeta | String | Yes | [{"type":"db","name":"testdb1","newname":"testdb1","tables":[{"type":"table","name":"test1","newname":"test1_backup"},{"type":"table","name":"test2","newname":"test2_backup"}]}] | Os nomes dos bancos de dados e das tabelas a serem restaurados na instância source. Sintaxe:
|
| ResourceGroupId | String | No | rg-acfmy***** | O id do grupo de recursos. |
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
RequestId |
String |
75BBF1EF-1E90-4950-BFFB-252D26E8259B |
O id da solicitação. |
|
DBInstanceId |
String |
rm-uf6wjk5* |
O id da instância. |
Exemplos
Exemplos de solicitações
http(s)://rds.aliyuncs.com/?Action=RestoreDdrTable
&DBInstanceId=rm-bpxxxxx
&RestoreType=0
&BackupId=279563
&TableMeta=[{"type":"db","name":"testdb1","newname":"testdb1","tables":[{"type":"table","name":"test1","newname":"test1_backup"},{"type":"table","name":"test2","newname":"test2_backup"}]}]
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<RestoreDdrTableResponse>
<RequestId>75BBF1EF-1E90-4950-BFFB-252D26E8259B</RequestId>
</RestoreDdrTableResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "75BBF1EF-1E90-4950-BFFB-252D26E8259B"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|
400 |
InvalidRestoreType.Format |
Specified restore type is not valid. |
Mensagem de erro retornada porque o tipo de restauração especificado é inválido. Especifique um tipo válido. |
|
400 |
InvalidRestoreTime.Format |
Specified restore time is not valid. |
Mensagem de erro retornada porque o valor do parâmetro RestoreTime é inválido. Especifique um valor válido. |
|
400 |
InvalidParamTableMeta |
Invalid parameter TableMeta is null or not json format |
Mensagem de erro retornada porque o valor do parâmetro TableMeta é inválido. Especifique um valor válido. |
|
400 |
InvalidParamTableMeta.Content |
TableMeta missing old dbname or new dbname, please check |
Mensagem de erro retornada porque o valor do parâmetro TableMeta não especifica as tabelas nos bancos de dados original e novo. |
|
400 |
InvalidParamTableMeta.Duplicate |
TableMeta has duplicate db or table with other newname, commons or system |
Mensagem de erro retornada porque bancos de dados e tabelas com os nomes especificados já existem na nova instância. |
|
400 |
InvalidSourceRestoreDBName.NotFound |
specific source restore dbname is not found in db list |
Mensagem de erro retornada porque os bancos de dados especificados não foram encontrados no backup de dados especificado. |
|
400 |
InvalidDBName.Duplicate |
Specified DB name already exists in the This instance. |
Mensagem de erro retornada porque o nome do banco de dados especificado está duplicado na instância. Altere o nome do banco de dados. |
|
400 |
InvalidParameters.Format |
Specified parameters is not valid. |
Mensagem de erro retornada porque um parâmetro especificado é inválido. |
|
400 |
InvalidAvZone.Format |
Specified AvZone is not valid. |
Mensagem de erro retornada porque o valor do parâmetro AvZone é inválido. |
|
400 |
InvalidRegion.Format |
Specified Region is not valid. |
Mensagem de erro retornada porque a região especificada é inválida. |
|
400 |
InvalidVpcParameter |
Specified VPCId VSwitchId or IPAddress or TunnelId is not valid. |
Mensagem de erro retornada porque os valores dos parâmetros VPCId e VSwitchId são inválidos. |
|
400 |
MissingUserID |
The request is missing a user_id parameter. |
Mensagem de erro retornada porque o id de usuário especificado não existe. |
|
400 |
MissingUID |
The request is missing a uid parameter. |
Mensagem de erro retornada porque a conta em uso não existe. |
|
403 |
IncorrectDBInstanceType |
Current DB instance type does not support this operation. |
Mensagem de erro retornada porque não há suporte para esta operação no estado atual da instância. |
|
403 |
IncorrectDBInstanceState |
Current DB instance state does not support this operation. |
Mensagem de erro retornada porque não há suporte para esta operação no estado atual da instância. |
|
403 |
ChildDBInstanceExists |
Current DB instance had child instance. |
Mensagem de erro retornada porque há instâncias somente leitura anexadas à instância original. |
|
403 |
InvalidBackupLogStatus |
Current backup log enable status does not support this operation. |
Mensagem de erro retornada porque o recurso de backup de log está desativado e, consequentemente, não é possível restaurar os dados para um ponto específico no tempo. |
|
403 |
IncorrectBackupSetMethod |
Current backup set method does not support operations. |
Mensagem de erro retornada porque não é possível usar o backup de dados especificado para restaurar bancos de dados e tabelas individuais. |
|
403 |
IncorrectBackupSetState |
Current backup set state does not support operations. |
Mensagem de erro retornada porque não há suporte para esta operação devido ao status do backup de dados especificado. |
|
404 |
RestoreType.NotFound |
RestoreType is not found. |
Mensagem de erro retornada porque o método de restauração especificado não existe. |
|
404 |
InvalidBackupSetID.NotFound |
Specified backup set ID does not exist. |
Mensagem de erro retornada porque o backup de dados especificado não existe. Especifique um backup de dados válido. |
|
404 |
InvalidBackup.NotFound |
The available backup does not exist in recovery time. |
Mensagem de erro retornada porque não há backups de dados disponíveis. |
|
404 |
InvalidBinlog.NotFound |
The available binlog does not exist in recovery time. |
Mensagem de erro retornada porque não há logs binários válidos disponíveis no ponto no tempo especificado. |
|
404 |
InvalidDB.NotFound |
Specified db does not exist or DB status does not support. |
Mensagem de erro retornada porque os bancos de dados e as tabelas especificados não foram encontrados no backup de dados especificado. |
|
404 |
InvalidDBInstance.NotFound |
Specified instance does not exist or not support. |
Mensagem de erro retornada porque a instância não foi encontrada, foi excluída ou não é compatível com a operação. |
Para obter uma lista de códigos de erro, visite o API Error Center.