Skip to main content

Descrição

Contém uma lista de todas as operações BACKUP ou RESTORE, com seus estados atuais e outras propriedades. Observe que essa tabela não é persistente e mostra apenas as operações executadas após a última reinicialização do servidor.

Colunas

  • id (String) — ID da operação, que pode ser informado por meio de SETTINGS id=… ou ser um UUID gerado aleatoriamente.
  • name (String) — Nome da operação, uma string como Disk('backups', 'my_backup')
  • base_backup_name (String) — Nome da operação de backup base, uma string como Disk('backups', 'my_base_backup')
  • query_id (String) — ID da consulta que iniciou o backup.
  • status (Enum8(‘CREATING_BACKUP’ = 0, ‘BACKUP_CREATED’ = 1, ‘BACKUP_FAILED’ = 2, ‘RESTORING’ = 3, ‘RESTORED’ = 4, ‘RESTORE_FAILED’ = 5, ‘BACKUP_CANCELLED’ = 6, ‘RESTORE_CANCELLED’ = 7)) — Status da operação de backup ou restauração.
  • error (String) — Mensagem de erro, se houver.
  • start_time (DateTime64(6)) — Horário de início da operação.
  • end_time (DateTime64(6)) — Horário de conclusão da operação.
  • num_files (UInt64) — Número de arquivos armazenados no backup.
  • total_size (UInt64) — Tamanho total dos arquivos armazenados no backup.
  • num_entries (UInt64) — Número de entradas no backup, ou seja, o número de arquivos na pasta, caso o backup seja armazenado como uma pasta.
  • uncompressed_size (UInt64) — Tamanho não comprimido do backup.
  • compressed_size (UInt64) — Tamanho comprimido do backup.
  • files_read (UInt64) — Retorna o número de arquivos lidos deste backup durante RESTORE.
  • bytes_read (UInt64) — Retorna o tamanho total dos arquivos lidos deste backup durante RESTORE.
  • ProfileEvents (Map(LowCardinality(String), UInt64)) — Todos os eventos de perfil capturados durante esta operação.
  • settings (Map(LowCardinality(String), String)) — Configurações específicas de backup/restauração efetivamente usadas nesta operação (da cláusula SETTINGS, incluindo os valores padrão). Configurações confidenciais não são expostas.
  • engine_settings (Map(LowCardinality(String), String)) — Configurações efetivamente usadas pelo leitor/componente de gravação do engine de backup (por exemplo, allow_native_copy do S3). Vazio quando a operação envolve mais de um engine, o que não pode ser representado por um map simples: backups incrementais e restaurações, restaurações leves de snapshot e operações ON CLUSTER não internas.

Atomicidade da restauração

RESTORE não é transacional e não faz rollback em caso de falha. Para cada tabela, todas as partes selecionadas são copiadas antes que qualquer uma delas seja anexada, mas a própria fase de anexação não é transacional — as partes ficam visíveis uma de cada vez. As tabelas são processadas de forma independente. As tabelas são independentes. Uma tabela cuja restauração for concluída permanece no lugar, mesmo que outra tabela no mesmo comando falhe depois:
Se este comando falhar depois que db.t0 tiver sido totalmente restaurado, mas a restauração de db.t1 ainda não tiver terminado, db.t0 continuará restaurado. A cláusula PARTITIONS não é um limite de commit. Ela apenas seleciona quais partes de uma tabela serão restauradas:
Todas as partes selecionadas da tabela são copiadas primeiro e anexadas somente quando todas estiverem prontas. Portanto, se esse comando falhar durante a fase de cópia — por exemplo, depois que a partição 2026-06-01 tiver sido totalmente copiada, mas 2026-06-02 e 2026-06-03 ainda não tiverem terminado — então 2026-06-01 não será confirmada, e a tabela ficará sem nenhum dado restaurado por esse comando. Quando a fase de cópia termina e a etapa de anexação começa, as partes são confirmadas uma a uma, portanto uma falha durante a anexação pode deixar a tabela parcialmente restaurada, sem rollback. Para confirmar as partições de forma independente (para que uma partição concluída sobreviva a uma falha posterior e possa ser repetida isoladamente), execute um RESTORE separado para cada partição, usando SETTINGS allow_non_empty_tables = true após a primeira.
Última modificação em 14 de agosto de 2026