الانتقال إلى المحتوى الرئيسي
يمكن لـ ClickPipes for MySQL اكتشاف تغييرات المخطط في الجداول المصدر، وفي بعض الحالات، تمرير هذه التغييرات تلقائيًا إلى الجداول الوجهة. آلية التعامل مع كل عملية DDL موثقة أدناه:
نوع تغيير المخططالسلوك
إضافة عمود جديد (ALTER TABLE ADD COLUMN ...)يتم تمريره تلقائيًا. ستتم تعبئة الأعمدة الجديدة لجميع الصفوف التي جرى نسخها بعد تغيير المخطط
إضافة عمود جديد بقيمة افتراضية (ALTER TABLE ADD COLUMN ... DEFAULT ...)يتم تمريره تلقائيًا. ستتم تعبئة الأعمدة الجديدة لجميع الصفوف التي جرى نسخها بعد تغيير المخطط، لكن الصفوف الحالية لن تُظهر القيمة الافتراضية إلا بعد إعادة تحديث كاملة للجدول
حذف عمود موجود (ALTER TABLE DROP COLUMN ...)يُكتشف، ولكن لا يتم تمريره. ستُملأ الأعمدة المحذوفة بالقيمة NULL لجميع الصفوف التي جرى نسخها بعد تغيير المخطط
إضافة أعمدة أثناء اللقطة غير مدعومة حاليًا. والحل البديل المقترح هو تنفيذ اللقطات قبل تغييرات المخطط المخطط لها أو بعدها، أو، إذا كان ClickPipe يتعطل بالفعل، إضافة عمود يدويًا من النوع المناسب إلى الجدول الوجهة.

قيود MySQL 5.x

إصدارات MySQL الأقدم من 8.0.1 لا تتضمن بيانات وصفية كاملة للأعمدة في binlog (binlog_row_metadata=FULL)، لذا تتعقّب ClickPipes الأعمدة بحسب ترتيبها. وهذا يعني ما يلي:
  • إضافة عمود في النهاية (ALTER TABLE ADD COLUMN ...) مدعومة.
  • أي DDL يغيّر ترتيب الأعمدة سيؤدي إلى ظهور خطأ في المسار، لأنه لن يعود بالإمكان بعد ذلك مطابقة المواضع الترتيبية بشكل موثوق. ويشمل ذلك:
    • ALTER TABLE DROP COLUMN ...
    • ALTER TABLE ADD COLUMN ... AFTER ... / FIRST
    • ALTER TABLE MODIFY COLUMN ... AFTER ... / FIRST
    • ALTER TABLE CHANGE COLUMN ... AFTER ... / FIRST
إذا واجهت هذا الخطأ، فستحتاج إلى إعادة مزامنة المسار.
آخر تعديل في ٢٩ يونيو ٢٠٢٦