Skip to main content

Description

Contient des informations sur chaque table détachée.

Colonnes

  • database (String) — Nom de la base de données à laquelle appartient la table.
  • table (String) — Nom de la table.
  • uuid (UUID) — UUID de la table (base de données atomic).
  • metadata_path (String) — Chemin vers les métadonnées de la table dans le système de fichiers.
  • is_permanently (UInt8) — La table a été détachée de manière permanente.

Notes

Pour DatabaseMySQL et DatabasePostgreSQL, ces bases de données ne possèdent pas les données sous-jacentes : celles-ci se trouvent sur le serveur MySQL/PostgreSQL distant. Par conséquent, l’opération DROP TABLE sur une table de l’un de ces moteurs de base de données est implémentée en interne comme detachTablePermanently : elle supprime uniquement le suivi local de la table par ClickHouse, et la table apparaît dans system.detached_tables avec is_permanently = 1, comme après un DETACH TABLE PERMANENTLY explicite. Les données distantes elles-mêmes ne sont pas modifiées. Pour les bases de données MySQL/PostgreSQL persistantes, l’état détaché persiste après les redémarrages du serveur et les reconnexions : DatabaseMySQL stocke un marqueur .remove_flag dans le répertoire de métadonnées, tandis que DatabasePostgreSQL stocke un marqueur .removed. Ces deux marqueurs sont rechargés par loadStoredObjects au démarrage. La table ne réapparaît que si un nouveau mappage de base de données externe est créé sans l’ancien répertoire de métadonnées — par exemple, si les métadonnées sont supprimées ou si la base de données est créée sous un autre nom.

Exemple

Dernière modification le 26 août 2026