Pular para o conteúdo principal
Esta seção apresenta uma visão geral de backups e restaurações no ClickHouse. Para uma descrição mais detalhada de cada método de backup, consulte as páginas dos métodos específicos na barra lateral.

Introdução

Embora a replicação ofereça proteção contra falhas de hardware, ela não protege contra erros humanos: exclusão acidental de dados, exclusão da tabela errada ou de uma tabela no cluster errado, e bugs de software que resultam em processamento incorreto de dados ou corrupção de dados. Em muitos casos, erros como esses afetam todas as réplicas. O ClickHouse tem salvaguardas integradas para evitar alguns tipos de erro; por exemplo, por padrão você não pode simplesmente excluir tabelas com um motor da família MergeTree contendo mais de 50 Gb de dados. No entanto, essas salvaguardas não cobrem todos os casos possíveis, e problemas ainda podem ocorrer. Para mitigar com eficácia possíveis erros humanos, você deve preparar cuidadosamente uma estratégia de backup e restauração dos seus dados com antecedência. Cada empresa tem recursos disponíveis e requisitos de negócio diferentes, portanto não há uma solução universal de backups e restaurações do ClickHouse que sirva para todas as situações. O que funciona para um gigabyte de dados provavelmente não funcionará para dezenas de petabytes de dados. Há várias abordagens possíveis, cada uma com seus próprios prós e contras, que são apresentadas nesta seção da documentação. É uma boa ideia usar várias abordagens em vez de apenas uma, para compensar suas diferentes limitações.
Lembre-se de que, se você fez backup de algo e nunca tentou restaurá-lo, há grandes chances de que a restauração não funcione corretamente quando você realmente precisar dela (ou, pelo menos, leve mais tempo do que a empresa pode tolerar). Portanto, qualquer que seja a abordagem de backup escolhida, certifique-se de automatizar também o processo de restauração e pratique-o regularmente em um cluster ClickHouse de contingência.
As páginas a seguir detalham os vários métodos de backup e restauração disponíveis no ClickHouse: Os backups podem:

Tipos de backup

Os backups podem ser completos ou incrementais. Os backups completos são uma cópia completa dos dados, enquanto os backups incrementais contêm apenas as alterações nos dados desde o último backup completo. Os backups completos têm a vantagem de serem um método de recuperação simples, independente (de outros backups) e confiável. No entanto, podem levar muito tempo para serem concluídos e podem consumir muito espaço. Os backups incrementais, por outro lado, são mais eficientes tanto em termos de tempo quanto de espaço, mas a restauração dos dados exige que todos os backups estejam disponíveis. Dependendo das suas necessidades, você pode optar por usar:
  • Backups completos para bancos de dados menores ou dados críticos.
  • Backups incrementais para bancos de dados maiores ou quando os backups precisam ser feitos com frequência e com bom custo-benefício.
  • Ambos, por exemplo, backups completos semanais e backups incrementais diários.

Backups síncronos vs. assíncronos

Os comandos BACKUP e RESTORE também podem ser marcados como ASYNC. Nesse caso, o comando de backup retorna imediatamente, e o processo de backup é executado em segundo plano. Se os comandos não forem marcados como ASYNC, o processo de backup será síncrono, e o comando ficará bloqueado até que o backup seja concluído.

Backups concorrentes vs. não concorrentes

Por padrão, o ClickHouse permite backups e restaurações concorrentes. Isso significa que você pode iniciar várias operações de backup ou restauração simultaneamente. No entanto, há configurações no nível do servidor que permitem desativar esse comportamento. Se você definir essas configurações como false, apenas uma operação de backup ou restauração poderá ser executada em um cluster por vez. Isso pode ajudar a evitar contenção de recursos ou possíveis conflitos entre operações. Para desativar backups/restaurações concorrentes, você pode usar estas configurações, respectivamente:
O valor padrão de ambos é true, então, por padrão, backups/restaurações concorrentes são permitidos. Quando essas configurações são false em um cluster, apenas um único backup/restauração pode ser executado no cluster por vez.

Backups compactados vs. não compactados

Os backups do ClickHouse suportam compactação por meio das configurações compression_method e compression_level. Ao criar um backup, você pode especificar:

Usando coleções nomeadas

Coleções nomeadas permitem armazenar pares chave-valor (como credenciais do S3, endpoints e configurações) que podem ser reutilizados em operações de backup e restauração. Elas ajudam a:
  • Ocultar credenciais de usuários sem acesso de Admin
  • Simplificar comandos armazenando configurações complexas de forma centralizada
  • Manter a consistência entre as operações
  • Evitar a exposição de credenciais nos logs de consultas
Consulte “coleções nomeadas” para mais detalhes.

Backup de tabelas de sistema, de log ou de gerenciamento de acesso

As tabelas de sistema também podem ser incluídas nos seus fluxos de trabalho de backup e restauração, mas isso depende do seu caso de uso específico. Tabelas de sistema que armazenam dados históricos, como aquelas com o sufixo _log (por exemplo, query_log, part_log), podem ser submetidas a backup e restauração como qualquer outra tabela. Se o seu caso de uso depender da análise de dados históricos — por exemplo, usar query_log para acompanhar o desempenho de consultas ou depurar problemas —, é recomendável incluir essas tabelas na sua estratégia de backup. No entanto, se os dados históricos dessas tabelas não forem necessários, elas podem ser excluídas para economizar espaço de armazenamento de backup. Tabelas de sistema relacionadas ao gerenciamento de acesso, como usuários, roles, row_policies, settings_profiles e quotas, recebem tratamento especial durante as operações de backup e restauração. Quando essas tabelas são incluídas em um backup, seu conteúdo é exportado para um arquivo especial accessXX.txt, que contém as instruções SQL equivalentes para criar e configurar as entidades de acesso. Durante a restauração, o processo interpreta esses arquivos e reaplica os comandos SQL para recriar os usuários, roles e outras configurações. Esse recurso garante que a configuração de controle de acesso de um cluster ClickHouse possa ser submetida a backup e restauração como parte da configuração geral do cluster. Essa funcionalidade só funciona para configurações gerenciadas por meio de comandos SQL (chamadas de “Controle de acesso e gerenciamento de contas orientados por SQL”). As configurações de acesso definidas em arquivos de configuração do servidor ClickHouse (por exemplo, users.xml) não são incluídas em backups e não podem ser restauradas por esse método.

Sintaxe geral

Consulte “resumo dos comandos” para obter mais detalhes sobre cada comando.

Resumo dos comandos

Cada um dos comandos acima é detalhado a seguir:

Configurações

Configurações genéricas de backup e restauração Configurações específicas do S3 Configurações específicas do Azure

Administração e solução de problemas

O comando de backup retorna um id e um status, e esse id pode ser usado para consultar o status do backup. Isso é muito útil para verificar o andamento de backups longos ASYNC. O exemplo abaixo mostra uma falha que ocorreu ao tentar sobrescrever um arquivo de backup existente:
Além da tabela system.backups, todas as operações de backup e restauração também são registradas na tabela de log do sistema system.backup_log:
Última modificação em 19 de junho de 2026