Restauração de dados em uma instância de banco de dados existente
Função
Esta API é usada para restaurar um banco de dados para uma instância de banco de dados existente.
- Antes de chamar uma API, você precisa entender a API em Autenticação.
Restrições
- O RDS for SQL Server oferece suporte à chamada em lote desta API para restaurar um banco de dados em uma instância de banco de dados existente.
- Esta API não oferece suporte à restauração de instâncias do RDS for PostgreSQL.
- Quando os dados são restaurados em uma instância de banco de dados existente, a API tem as seguintes restrições:
- O mecanismo de banco de dados da instância de banco de dados original deve ser o mesmo da instância de banco de dados de destino. Por exemplo, se a instância de banco de dados original estiver executando o MySQL, a instância de banco de dados de destino também deve executar o MySQL.
- A versão do mecanismo de banco de dados da instância de destino deve ser pelo menos igual à da instância original. Por exemplo, uma instância do RDS for MySQL 5.7.25 pode ser restaurada para uma instância do RDS for MySQL 5.7.27. Para restrições de versão do RDS for SQL Server, consulte Tabela 1.
- O espaço de armazenamento total da instância de banco de dados de destino deve ser pelo menos igual ao da instância de banco de dados original do RDS for MySQL.
- Restauração entre regiões não é suportada.
- Para instâncias de banco de dados do RDS for MySQL, quando os dados são restaurados em uma instância de banco de dados existente, a configuração de diferença de maiúsculas e minúsculas da instância de banco de dados existente deve ser a mesma da instância de banco de dados original. Caso contrário, a restauração pode falhar.
- Quando os dados são restaurados em uma instância de banco de dados original:
esta API é suportada apenas para o mecanismo de banco de dados do Microsoft SQL Server.
Tabela 1 Restauração para as versões do mecanismo de banco de dados com suporte do RDS for SQL Server Versão original do mecanismo de banco de dados
Restaurável para
2008 R2 Standard Edition
2008 R2 Standard Edition
2008 R2 Enterprise Edition
2012 Standard Edition
2012 Enterprise Edition
2014 Standard Edition
2014 Enterprise Edition
2016 Standard Edition
2016 Enterprise Edition
2017 Standard Edition
2017 Enterprise Edition
2012 Web Edition
2012 Web Edition
2012 Standard Edition
2012 Enterprise Edition
2014 Web Edition
2014 Standard Edition
2014 Enterprise Edition
2016 Web Edition
2016 Standard Edition
2016 Enterprise Edition
2017 Web Edition
2017 Standard Edition
2017 Enterprise Edition
2012 Standard Edition
2012 Standard Edition
2012 Enterprise Edition
2014 Standard Edition
2014 Enterprise Edition
2016 Standard Edition
2016 Enterprise Edition
2017 Standard Edition
2017 Enterprise Edition
2012 Enterprise Edition
2012 Enterprise Edition
2014 Enterprise Edition
2016 Enterprise Edition
2017 Enterprise Edition
2014 Standard Edition
2014 Standard Edition
2014 Enterprise Edition
2016 Standard Edition
2016 Enterprise Edition
2017 Standard Edition
2017 Enterprise Edition
2014 Enterprise Edition
2014 Enterprise Edition
2016 Enterprise Edition
2017 Enterprise Edition
2016 Standard Edition
2016 Standard Edition
2016 Enterprise Edition
2017 Standard Edition
2017 Enterprise Edition
2016 Enterprise Edition
2016 Enterprise Edition
2017 Enterprise Edition
2017 Web Edition
2017 Web Edition
2017 Standard Edition
2017 Enterprise Edition
2017 Standard Edition
2017 Standard Edition
2017 Enterprise Edition
2017 Enterprise Edition
2017 Enterprise Edition
URI
- Formato de URI
- Descrição do parâmetro
Tabela 2 Descrição do parâmetro Nome
Obrigatório
Descrição
project_id
Sim
Especifica o ID do projeto de um locatário em uma região.
Para obter detalhes sobre como obter o ID do projeto, consulte Obtenção de um ID de projeto.
Solicitação
- Descrição do parâmetro
Tabela 3 Descrição do parâmetro Nome
Obrigatório
Tipo
Descrição
source
Sim
Object
Especifica as informações de restauração.
Para mais detalhes, consulte Tabela 4.
target
Sim
Object
Especifica o destino de restauração.
Para mais detalhes, consulte Tabela 5.
Tabela 4 Descrição da estrutura de dados do campo source Nome
Obrigatório
Tipo
Descrição
instance_id
Sim
String
Especifica o ID da instância de banco de dados.
type
Não
String
Especifica o modo de restauração. Os valores enumerados incluem:
- backup: indica o uso de arquivos de backup para restauração. Neste modo, type não é obrigatório e backup_id é obrigatório.
- timestamp: indica o modo de restauração pontual. Neste modo, type e restore_time são obrigatórios.
backup_id
Não
String
Especifica o ID do backup usado para restaurar dados. Este parâmetro deve ser especificado quando o arquivo de backup é usado para restauração.
restore_time
Não
Integer
Especifica o ponto de tempo da restauração de dados no carimbo de data/hora UNIX. A unidade é milissegundo e o fuso horário é UTC.
database_name
Não
Map<String, String>
Este parâmetro se aplica somente ao mecanismo de banco de dados do Microsoft SQL Server.
- Se este parâmetro estiver especificado, você poderá restaurar todos os bancos de dados ou bancos de dados específicos e renomear novos bancos de dados.
- Se este parâmetro não estiver especificado, todos os bancos de dados serão restaurados por padrão.
- Você pode inserir vários novos nomes de banco de dados e separá-los com vírgulas (,). Os novos nomes de banco de dados podem conter, mas não podem ser iguais aos nomes de banco de dados originais.
- Observe o seguinte quando você estiver especificando novos nomes de banco de dados:
- Os novos nomes de banco de dados devem ser diferentes dos nomes de banco de dados originais. Se eles forem deixados em branco, os nomes originais do banco de dados serão usados para restauração por padrão.
- As definições de diferença de maiúsculas e minúsculas das novas bases de dados são as mesmas das bases de dados originais. Certifique-se de que os novos nomes de banco de dados sejam exclusivos.
- O número total de bancos de dados novos e existentes nas instâncias de banco de dados existentes ou originais em que os dados são restaurados não pode exceder a cota de banco de dados especificada por rds_databases_quota.
- Novos nomes de banco de dados não podem conter os seguintes campos (sem distinção entre maiúsculas e minúsculas): rdsadmin, master, msdb, tempdb, model e resource.
- Os novos nomes de banco de dados devem ter de 1 a 64 caracteres, incluindo apenas letras, dígitos, sublinhados (_) e hifens (_). Se você quiser restaurar dados para vários novos bancos de dados, separe-os com vírgulas (,).
- Novos nomes de banco de dados devem ser diferentes de quaisquer nomes de banco de dados na instância de banco de dados original.
- Novos nomes de banco de dados devem ser diferentes de quaisquer nomes de banco de dados nas instâncias de banco de dados existentes ou originais em que os dados são restaurados.
Exemplo:"database_name":{"Original database name":"New database name"}
Exemplo correto: "database_name":{"A":"A,A1,A2","B":"B1,B2","C":""}
Exemplo incorreto: "database_name":{"A":"A","B":"B1,B2","C":"B1,C1","D":"D1,d1"},
As causas de erro são as seguintes:
- O nome do novo banco de dados (A) é o mesmo que o nome do banco de dados original (A).
- O novo nome de banco de dados (B1) não é exclusivo.
- Quando o nome do banco de dados não diferencia maiúsculas de minúsculas, os nomes de banco de dados D1 e d1 entram em conflito.
- Tenha cuidado ao restaurar dados para uma instância de banco de dados existente ou original.
AVISO:Antes da restauração, certifique-se de que o tamanho dos dados restaurados não exceda a capacidade de disco adquirida. Expanda a capacidade do disco, se necessário.
restore_all_database
Não
Boolean
Especifica se todos os bancos de dados devem ser restaurados. O valor padrão é false, indicando que nem todos os bancos de dados devem ser restaurados para a instância de destino.
Este campo está disponível apenas para o Microsoft SQL Server.
AVISO:Se você quiser restaurar todos os bancos de dados para uma instância existente, defina restore_all_database como true.
- Exemplo
POST https://rds.ap-southeast-1.myhuaweicloud.com/v3.1/0483b6b16e954cb88930a360d2c4e663/instances/recovery
- Exemplo de solicitação
Usar arquivos de backup para restauração:
MySQL:
{ "source": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin01", "type": "backup", "backup_id": "2f4ddb93-b901-4b08-93d8-1d2e472f30fe" }, "target": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin01" } }
Microsoft SQL Server:
{ "source": { "instance_id": "61879e6085bc44d1831b0ce62d988fd9in04", "type": "backup", "backup_id": "b021670e69ba4538b7b2ed07257306aebr04", "restore_all_database":true }, "target": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin04" } }
Usar a PITR para restauração:
MySQL:
{ "source": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin01", "type": "timestamp", "restore_time": 1532001446987 }, "target": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin01" } }
Microsoft SQL Server:
{ "source": { "instance_id": "61879e6085bc44d1831b0ce62d988fd9in04", "type": "timestamp", "restore_time": 1532001446987, "database_name": { "db1": "dbtest1,dbtest2", "db2": "db2,db02", "db3": "" } }, "target": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin04" } }
Resposta
- Resposta normal
Tabela 6 Descrição do parâmetro Nome
Tipo
Descrição
job_id
String
Indica o ID da tarefa.
- Exemplo de resposta normal
{ "job_id": "ff80808157127d9301571bf8160c001d" }
- Resposta anormal
Para mais detalhes, consulte Resultados anormais da solicitação.
Código de status
- Normal
- Anormal
Para mais detalhes, consulte Códigos de status.
Código de erro
Para mais detalhes, consulte Códigos de erro.