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) — الجدول منفصل نهائيًا.

ملاحظات

بالنسبة إلى DatabaseMySQL وDatabasePostgreSQL، لا تملك قواعد البيانات هذه البيانات الفعلية، إذ تكون مخزنة على خادم MySQL/PostgreSQL البعيد. لذلك، يُنفَّذ الأمر DROP TABLE على جدول تابع لأحد محركات قواعد البيانات هذه داخليًا بوصفه detachTablePermanently: فهو لا يزيل سوى التتبّع المحلي للجدول في ClickHouse، ويظهر الجدول في system.detached_tables بالقيمة is_permanently = 1، تمامًا كما عند تنفيذ DETACH TABLE PERMANENTLY صراحةً. ولا تتأثر البيانات البعيدة نفسها. بالنسبة إلى قواعد بيانات 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