Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

system.detached_tables

説明

各デタッチされたテーブルに関する情報を含みます。

カラム

  • database (String) — テーブルが属するデータベースの名前。
  • table (String) — テーブル名。
  • uuid (UUID) — テーブルの uuid (Atomic データベース) 。
  • metadata_path (String) — ファイルシステム内のテーブルのメタデータへのパス。
  • is_permanently (UInt8) — テーブルが永続的にデタッチされたかどうか。

注記

DatabaseMySQLDatabasePostgreSQL では、基盤となるデータはこれらのデータベースではなく、リモートの MySQL/PostgreSQL サーバーに存在します。そのため、これらのデータベースエンジンのテーブルに対する DROP TABLE は、内部的には detachTablePermanently として実装されています。これは ClickHouse によるテーブルのローカルな追跡情報のみを削除するものであり、明示的な DETACH TABLE PERMANENTLY と同様に、テーブルは is_permanently = 1 を伴って system.detached_tables に表示されます。リモートデータ自体は変更されません。永続的な MySQL/PostgreSQL データベースでは、デタッチ状態はサーバーの再起動や再接続後も維持されます。DatabaseMySQL はメタデータディレクトリに .remove_flag マーカーを保存し、DatabasePostgreSQL.removed マーカーを保存します。どちらも起動時に loadStoredObjects によって再読み込みされます。古いメタデータディレクトリを使用せずに新しい外部データベースマッピングが作成された場合にのみ、テーブルは再表示されます。たとえば、メタデータが削除された場合や、異なる名前でデータベースが作成された場合です。

SELECT * FROM system.detached_tables FORMAT Vertical;
Row 1:
──────
database:                   base
table:                      t1
uuid:                       81b1c20a-b7c6-4116-a2ce-7583fb6b6736
metadata_path:              /var/lib/clickhouse/store/461/461cf698-fd0b-406d-8c01-5d8fd5748a91/t1.sql
is_permanently:             1
Navigation