إصدارات Postgres المدعومة
تمكين النسخ المتماثل المنطقي
rds.logical_replication = 1
- أنشئ مجموعة معلمات جديدة لإصدار Aurora PostgreSQL لديك بالإعداد المطلوب:
- اضبط
rds.logical_replicationعلى 1
- اضبط
- طبّق مجموعة المعلمات الجديدة على عنقود Aurora PostgreSQL لديك
- أعد تشغيل عنقود Aurora لتطبيق التغييرات
إعداد مستخدم قاعدة البيانات
-
أنشئ مستخدمًا مخصصًا لـ ClickPipes:
-
امنح المستخدم الذي أنشأته في الخطوة السابقة صلاحية وصول للقراءة فقط على مستوى الـ schema. يوضّح المثال التالي الأذونات الخاصة بـ schema
public. كرر هذه الأوامر لكل schema يحتوي على الجداول التي تريد تكرارها: -
امنح المستخدم امتيازات النسخ المتماثل:
- أنشئ publication يتضمن الجداول التي تريد تكرارها. نوصي بشدة بقصر الـ publication على الجداول التي تحتاج إليها فقط لتجنّب أي حمل إضافي على الأداء.
-
لإنشاء publication لجداول محددة:
-
لإنشاء publication لجميع الجداول ضمن schema محدد:
-
لإنشاء publication لجميع الجداول ضمن schema محدد:
clickpipes مجموعة الجداول التي ستُبث أحداث التغيير الخاصة بها إلى ClickPipes. نوصي بعدم استخدام FOR ALL TABLES إلا إذا كنت تنوي تكرار كل table، لأن تضمين جداول غير ضرورية يزيد من حركة WAL من Postgres إلى ClickPipes ويقلّل من الكفاءة الإجمالية للنسخ المتماثل.
استخدام مصادقة IAM (اختياري)
password، يمكنك مصادقة مستخدم ClickPipes باستخدام وصول AWS IAM المستند إلى الدور. ويتطلب ذلك ضبط المعلَمة rds.iam_auth_for_replication على 1. أنشئ المستخدم كما يلي، ثم امنحه امتيازات schema وreplication نفسها الموضحة أعلاه:
إعداد الوصول إلى الشبكة
التحكم في الوصول المستند إلى IP
Inbound rules في مجموعة الأمان الخاصة بـ Aurora.
الوصول الخاص عبر AWS PrivateLink
اعتبارات خاصة بـ Aurora
- نقطة نهاية الاتصال: احرص دائمًا على الاتصال بـ نقطة نهاية الكتابة لعنقود Aurora لديك، لأن النسخ المتماثل المنطقي يتطلب صلاحية الكتابة لإنشاء replication slots، كما يجب أن يتصل بالمثيل الأساسي.
- التعامل مع التحويل عند الفشل: في حال حدوث failover، سيقوم Aurora تلقائيًا بترقية مثيل قارئ ليصبح الكاتب الجديد. سيكتشف ClickPipes انقطاع الاتصال وسيحاول إعادة الاتصال بـ نقطة نهاية الكتابة، التي ستشير حينها إلى المثيل الأساسي الجديد.
- قاعدة البيانات العالمية: إذا كنت تستخدم Aurora Global Database، فينبغي أن تتصل بـ نقطة نهاية الكتابة الخاص بالمنطقة الأساسية، لأن النسخ المتماثل عبر المناطق يتولى بالفعل نقل البيانات بين المناطق.
- اعتبارات التخزين: تكون طبقة التخزين في Aurora مشتركة بين جميع المثيلات في العنقود، ما قد يوفّر أداءً أفضل للنسخ المتماثل المنطقي مقارنةً بـ RDS القياسي.
التعامل مع نقاط نهاية العنقود الديناميكية
- في عمليات الإعداد عالية التوافر، اضبط تطبيقك لاستخدام نقطة نهاية الكتابة في Aurora، والتي تُشير تلقائيًا إلى المثيل الأساسي الحالي.
- إذا كنت تستخدم النسخ المتماثل عبر المناطق، ففكّر في إعداد ClickPipes منفصلة لكل Region لتقليل زمن الاستجابة وتحسين تحمّل الأعطال.