A restauração de banco de dados e tabela recupera apenas bancos de dados ou tabelas específicos no cluster original. Em cenários de jogos, por exemplo, talvez seja necessário restaurar somente os dados de jogadores específicos. Nesses casos, utilize o recurso de restauração de banco de dados e tabela. Esse recurso oferece suporte a dois métodos de backup: restauração a partir de um conjunto de backups e restauração para um ponto anterior no tempo. Este tópico descreve como restaurar bancos de dados ou tabelas específicos para um ponto anterior no tempo.
Introdução
O recurso de restauração de banco de dados e tabela do PolarDB não sobrescreve nem exclui bancos de dados e tabelas existentes no cluster original, tampouco grava dados neles. Em vez disso, ele cria novos bancos de dados e tabelas no cluster original. Durante a restauração, é possível especificar novos nomes de banco de dados ou de tabela para restaurar os dados de backup de db1 em db2.
Durante a restauração de banco de dados e tabela, o acesso normal aos bancos de dados no cluster original permanece inalterado. No entanto, a operação pode consumir recursos computacionais do cluster original e causar aumento na utilização da CPU e no IOPS do cluster.
Cenários
Edições de cluster
O recurso de restauração de banco de dados e tabela é compatível com as edições Enterprise e Standard do PolarDB, mas exige versões de revisão específicas do cluster. A tabela a seguir lista as versões mínimas de revisão necessárias para diferentes cenários.
Recursos básicos: Versão mínima de revisão necessária para oferecer suporte à restauração de banco de dados e tabela.
-
Cluster primário GDN/Novo processo de restauração: Versão mínima de revisão necessária para usar o recurso em um cluster primário global database network (GDN) ou para aproveitar a otimização de velocidade do new restoration process.
NotaO novo fluxo de restauração para o recurso de restauração de banco de dados e tabela é uma melhoria que otimiza a velocidade de restauração de dados no cluster original. Para obter mais informações sobre o mecanismo e a velocidade, consulte Overall Flow and Estimated Time.
|
Série da Edição |
Versão do MySQL |
Arquitetura |
Recursos Básicos (Versão Mínima de Revisão) |
Cluster Primário GDN/Novo Processo de Restauração (Versão Mínima de Revisão) |
|
Enterprise Edition (Cluster Edition) |
5,6 |
X86 |
|
|
|
5,7 |
X86 |
|
|
|
|
8.0.1 |
X86 |
|
|
|
|
8.0.2 |
X86 |
|
|
|
|
Standard Edition |
5,6 |
X86 |
|
|
|
5,7 |
X86 |
|
|
|
|
8.0.1 |
X86 |
|
|
|
|
Yitian (ARM) |
|
|
||
|
8.0.2 |
X86 |
|
|
É possível visualizar a versão do kernel do seu cluster na seção Configurations da página Basic Information do seu cluster PolarDB for MySQL.
Outras limitações
O recurso de restauração de banco de dados e tabela apresenta as seguintes limitações:
-
Clusters:
Não há suporte para esse recurso em clusters Multi-master Cluster (Limitless) Edition ou clusters secundários em uma global database network (GDN).
-
A restauração de banco de dados e tabela não é suportada em clusters com mais de 50.000 tabelas em nenhum dos seguintes casos:
O tipo de armazenamento é SSD empresarial (ESSD).
O cluster não possui nós somente leitura (RO).
-
Esquemas e índices de tabela:
Tabelas que contêm um global secondary index (GSI) não são suportadas.
Não há suporte para restauração de um columnstore index (IMCI).
Mecanismos de armazenamento: Apenas tabelas que utilizam o mecanismo de armazenamento InnoDB podem ser restauradas.
status dos dados: Tabelas arquivadas como cold data não podem ser restauradas.
Se o seu cluster atual não oferecer suporte ao recurso de restauração de banco de dados e tabela, use a full restoration para restaurar os dados em um novo cluster e, em seguida, migrate the data para o cluster de source.
Observações de uso
A restauração para um ponto no tempo refere-se à seleção de um momento específico para recuperar as tabelas do banco de dados. Após a restauração, as tabelas conterão apenas os dados correspondentes àquele momento, garantindo que os dados da tabela no banco de dados estejam consistentes com o ponto no tempo selecionado.
O modo "Restaurar para um ponto anterior no tempo" no recurso de restauração de banco de dados e tabela suporta apenas a recuperação a partir de um ponto no tempo de um backup de primeiro nível. Não há suporte para restauração a partir de um backup de segundo nível.
-
A operação de restauração de banco de dados e tabela falha nos seguintes cenários:
O nome do banco de dados ou da tabela especificado já existe no cluster original.
Entre o momento em que o conjunto de backups foi gerado e o ponto de restauração, a tabela a ser restaurada foi excluída, ou o cluster contém um banco de dados ou tabela com o mesmo nome do banco de dados ou tabela de destino.
-
A restauração de banco de dados e tabela recupera apenas as tabelas especificadas. Certifique-se de ter selecionado todas as tabelas que precisam ser restauradas.
NotaCaso não seja possível determinar todas as tabelas envolvidas, recomendamos restaurar os dados históricos de todo o cluster para um novo cluster e, em seguida, migrar os dados para o cluster original. Para obter mais informações, consulte Restore from a backup set e Restore a cluster to a point in time.
-
Se você não restaurar o banco de dados inteiro, será possível restaurar até 100 tabelas por vez para cada banco de dados. Se optar por restaurar o banco de dados completo, todas as tabelas nele contidas serão recuperadas.
NotaRestaurar muitas tabelas simultaneamente prolonga significativamente o tempo da operação. Por isso, evite restaurar um número excessivo de tabelas de uma só vez.
Quando for necessário restaurar uma grande quantidade de tabelas, recomenda-se recuperar todos os dados históricos para um novo cluster. Para etapas detalhadas da operação, consulte Restore from a backup set e Restore a cluster to a point in time.
-
O recurso de restauração de banco de dados e tabela pode ser utilizado mesmo quando o cluster possui mais de 50.000 tabelas (incluindo tabelas do sistema).
NotaEste recurso está atualmente em fase de lançamento gradual. Para utilizá-lo, Contact us para adicionar o cluster à lista de permissões e ative o recurso.
-
Consulte o número de tabelas (incluindo tabelas do sistema) no cluster. A instrução SQL é a seguinte:
SELECT COUNT(*) FROM information_schema.tables; -
verifique a quantidade de tabelas do sistema no cluster utilizando a seguinte instrução SQL:
SELECT COUNT(*) FROM information_schema.tables WHERE table_schema IN ('sys', 'performance_schema', 'mysql', 'information_schema', '__recycle_bin__');
A restauração de banco de dados e tabela não oferece suporte à recuperação de triggers. Se a tabela original tiver um trigger configurado, ele não será restaurado.
Não há suporte para restauração de chaves estrangeiras na recuperação de banco de dados e tabela. Caso a tabela original possua uma chave estrangeira configurada, ela não será restaurada.
Recomendamos realizar a restauração de dados fora dos horários de pico.
Procedimento
Faça login no console do PolarDB. No painel de navegação à esquerda, clique em Clusters. Selecione a Region onde o cluster está implantado e clique em no ID do cluster para acessar a página de detalhes do cluster.
No painel de navegação à esquerda, escolha e clique em Restore Databases/Tables.
-
Na caixa de diálogo exibida, defina Restoration Type como Point in Time e selecione o ponto no tempo desejado para a Restoration Time.
NotaO ponto no tempo selecionado para Restoration Time deve estar dentro do intervalo de Restore To. Além disso, a tabela a ser restaurada deve existir no conjunto de backups completos mais recente realizado antes desse ponto no tempo para que o recurso Point in Time funcione corretamente. O intervalo de pontos no tempo passíveis de restauração depende do período definido em Log Retention Period (Days) nas configurações de backup, que é de 7 dias por padrão.
-
O recurso de restauração de banco de dados e tabela oferece três configurações de velocidade baseadas no consumo de IOPS: Quick, Standard e Secure. Escolha uma configuração conforme as necessidades do seu negócio. Para a duração estimada da restauração em cada configuração de velocidade, consulte Reference for database and table restoration speed tests.
Quick: Durante a restauração de dados no cluster atual, uma grande quantidade de IOPS pode ser consumida. Recomendamos selecionar esta configuração fora dos horários de pico.
Standard (recomendado para clusters com mais de 4 núcleos): Durante a restauração de dados no cluster atual, uma quantidade moderada de IOPS pode ser consumida.
Secure (recomendado para clusters com 4 núcleos ou menos): Durante a restauração de dados no cluster atual, apenas uma pequena quantidade de IOPS é consumida, mas a velocidade de restauração pode ser significativamente afetada.
Para clusters com 4 núcleos ou menos, recomendamos verifique se
innodb_io_capacityeinnodb_io_capacity_maxestão definidos com valores correspondentes à especificação do cluster. Para o IOPS máximo suportado por cada especificação de cluster, consulte Compute node specifications for Enterprise Edition e Compute node specifications for Standard Edition. Recomendamos utilizar a velocidade Secure para a restauração.
-
Na seção Databases and Tables to Restore, selecione o banco de dados de destino no lado esquerdo e as tabelas de destino no lado direito.
NotaSe novos nomes de banco de dados ou de tabela não forem especificados, o sistema adicionará
_backupaos nomes originais para gerar automaticamente novos nomes de bancos de dados e tabelas. Por exemplo, se o nome original da tabela fortest, o novo nome gerado automaticamente serátest_backup.Ao selecionar um banco de dados de destino sem especificar tabelas, todas as tabelas do banco de dados serão restauradas por padrão.
Após confirmar que você selecionou os bancos de dados e as tabelas que deseja restaurar, clique em OK.
Referência da API
|
Operação |
Descrição |
|
Consulta os detalhes de metadados de bancos de dados e tabelas que podem ser restaurados. |
|
|
Restore specified databases or tables of a PolarDB cluster to the original cluster |
Restaura bancos de dados ou tabelas específicos de um cluster PolarDB para o cluster original. |