لا يمكن عمل نسخة احتياطية بسبب عدم تطابق الإصدار على AWS

مرحبًا، أقوم بإعداد بيئة موجهة نحو مثيل AWS RDS خارجي (Postgres 11.x)

لاحظت هذا الخطأ عند محاولة عمل نسخة احتياطية عبر واجهة المستخدم:

[2019-10-25 21:50:35] جاري تصدير المخطط العام لقاعدة البيانات...
[2019-10-25 21:50:35] pg_dump: إصدار الخادم: 11.5؛ إصدار pg_dump: 10.10 (Debian 10.10-1.pgdg100+1)
[2019-10-25 21:50:35] pg_dump: الإلغاء بسبب عدم تطابق إصدار الخادم

أعتقد أن السبب هو عدم تطابق إصدار pg_dump في حاوية Docker مع إصدار قاعدة بيانات RDS الخارجية. هل لديك أي اقتراحات لكيفية التعامل مع هذا؟ هل يجب أن أستخدم قاعدة بيانات خارجية ليست من الإصدار 11.x؟

الإصدار المدعوم حاليًا من PostgreSQL هو 10.x. نخطط للترقية إلى الإصدار 12.x في دورة الإصدار القادمة.

توفر منصة Google Cloud إصدار PostgreSQL 11 افتراضيًا. يتوفر الإصدار 10 فقط في مرحلة “التجربة” (beta).

متى يمكننا توقع دعم الإصدار 11.x؟

نخطط للانتقال إلى الإصدار 12.x خلال بضعة أشهر. سيتم تخطي الإصدار 11.x.

لقد قمنا بالفعل بنشر الإصدار 11 من PostgreSQL. هل يمكننا الاستمرار في استخدامه؟ هل النسخ الاحتياطي هي الميزة الوحيدة التي لا تعمل؟ كيف يمكننا التراجع إلى الإصدار 10 إذا لم نتمكن من التصدير/الاستيراد؟

بما أن PostgreSQL موثوق جدًا في الحفاظ على عمل الميزات وليس سريعًا في إزالتها، فمن المفترض أن يعمل، باستثناء النسخ الاحتياطي والاستعادة اللذين يعتمدان على إصدار pg_dump في الحاوية.

نحن لا نستخدمه ولا نختبر عليه، لذا فإنك تتحمل المسؤولية بنفسك إذا نشأ أي مشكلة.

كنا في نفس القارب: تم النشر على قاعدة بيانات Postgres 11 المدارة بواسطة GCP لأن التوثيق يطلب Postgres 10 أو أحدث.

في النهاية، قمنا فقط بإضافة أمر مخصص إلى عملية التمهيد (bootstrap) لتثبيت أدوات عميل PG 11 وتغيير pg_dump لاستخدام هذا الإصدار افتراضيًا.

  - exec:
      cmd:
        - apt-get update && apt-get install postgresql-client-11 && update-alternatives --install /usr/bin/pg_dump pg_dump /usr/lib/postgresql/11/bin/pg_dump 1

هذا حل بديل معقول، ونخطط لترقية PostgreSQL في صورنا الرسمية إلى الإصدار 12 خلال الأشهر القليلة القادمة

ندير الآن PostgreSQL 12 update المتاح في AWS RDS.