Descrição
Contém informações sobre cada tabela em estado desanexado.Colunas
database(String) — O nome do banco de dados em que a tabela está.table(String) — Nome da tabela.uuid(UUID) — UUID da tabela (banco de dados atomic).metadata_path(String) — Caminho dos metadados da tabela no sistema de arquivos.is_permanently(UInt8) — A tabela foi desanexada permanentemente.
Notas
No caso deDatabaseMySQL e DatabasePostgreSQL, esses bancos de dados não são proprietários dos dados subjacentes — eles residem no servidor MySQL/PostgreSQL remoto. Como resultado, o DROP TABLE de uma tabela de um desses motores de banco de dados é implementado internamente como detachTablePermanently: ele apenas remove o rastreamento local da tabela no ClickHouse, e a tabela aparece em system.detached_tables com is_permanently = 1, assim como em um DETACH TABLE PERMANENTLY explícito. Os dados remotos permanecem intactos. Para bancos de dados MySQL/PostgreSQL persistentes, o estado desanexado persiste entre reinicializações e reconexões do servidor: DatabaseMySQL armazena um marcador .remove_flag no diretório de metadados, enquanto DatabasePostgreSQL armazena um marcador .removed. Ambos são recarregados por loadStoredObjects na inicialização. A tabela só reaparece se for criado um novo mapeamento de banco de dados externo sem o diretório de metadados antigo — por exemplo, se os metadados forem removidos ou se o banco de dados for criado com outro nome.