Contém informações sobre cada tabela em estado desanexado.
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.
No caso de DatabaseMySQL 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.
Última modificação em 26 de agosto de 2026