تخطَّ إلى المحتوى

احفظ بيانات تطبيقك في Railway Postgres

باختصاريؤدي موصل Railway مهمتين منفصلتين. برمز API ومعرّف المشروع ومعرّف البيئة، يتيح لك نشر التطبيق على Railway. وإذا أضفت أيضًا سلسلة الاتصال العامة بقاعدة Railway Postgres، ينقل MonstarX جداول التطبيق وصفوفه إلى هناك، ويتحقق منها، ويعيد كتابة التطبيق ليستخدمها. ويعيد زر «إعادة البيانات» البيانات إلى MonstarX.

تُعد Railway منصة سحابية لتشغيل التطبيقات وقواعد البيانات. يربط موصل Railway في MonstarX أحد تطبيقاتك بمشروعك في Railway، لإحدى مهمتين أو لكلتيهما:

  • حفظ بيانات التطبيق في Railway Postgres: قاعدة Postgres خاصة بك على Railway، بدلًا من قاعدة بيانات MonstarX. وهذا ما تشرحه هذه الصفحة.
  • نشر التطبيق على Railway: تشغيله على مشروعك في Railway من مستودعه على GitHub. راجع النشر على استضافات أخرى.

المهمتان مستقلتان: يمكن أن تكون بياناتك في Railway Postgres والتطبيق منشور على MonstarX، والعكس صحيح.

اختره عندما تكون أعمالك على Railway أصلًا، أو تريد بيانات التطبيق في حسابك الخاص، أو تريد الوصول إليها بأدوات قواعد البيانات الخاصة بك. وإلا فقاعدة بيانات MonstarX لا تحتاج إلى أي إعداد، راجع قاعدة بيانات تطبيقك.

يحفظ التطبيق بياناته في مكان واحد في كل مرة. الانتقال إلى Railway Postgres عملية نقل، لا نسخ.

في Railway:

  1. افتح مشروعًا في Railway (أو أنشئ واحدًا) واختر البيئة التي ستستخدمها، وهي عادةً production.
  2. أضف إليه خدمة قاعدة بيانات Postgres وفعّل public networking الخاص بها، ليتمكن MonstarX من الوصول إليها.
  3. أنشئ رمز API للحساب أو لمساحة العمل من Account Settings → Tokens في Railway. رمز المشروع لا يستطيع إنشاء الخدمات، فلن يعمل.

وفي MonstarX، يجب أن تكون بيانات التطبيق في قاعدة بيانات MonstarX. فإن كانت في Supabase أو Firestore، فأعدها أولًا.

كيف أنقل بيانات تطبيقي إلى Railway Postgres؟

Section titled “كيف أنقل بيانات تطبيقي إلى Railway Postgres؟”
  1. افتح مشروعك وانقر على الخدمات السحابية في الشريط العلوي، ثم على السحابة.

  2. في قسم الموصلات، انقر على ربط بجانب Railway، أو اختر Railway (Postgres) في مكان تخزين بيانات هذا التطبيق.

  3. املأ النموذج:

    • رمز API للحساب أو مساحة العمل: الرمز الذي أنشأته في Railway.
    • معرّف المشروع: من إعدادات مشروعك في Railway.
    • معرّف البيئة: من الإعدادات نفسها.
    • سلسلة الاتصال العامة بـ Postgres (اختياري): قيمة DATABASE_PUBLIC_URL لخدمة Postgres الخاصة بك. هذه هي ما يبدأ عملية النقل، فاتركها فارغة إن كنت تريد النشر على Railway فقط.
  4. انقر على ربط Railway. يتحقق MonstarX من أن البيئة تابعة للمشروع، ومن قدرته على إنشاء الجداول في قاعدة البيانات.

  5. تظهر بطاقة في المحادثة: نقل بيانات هذا التطبيق إلى Railway Postgres، مع عدد الجداول والصفوف التي وجدها. انقر على نقل تطبيقي.

  6. تعرض البطاقة كل خطوة، من قراءة البيانات وإنشاء الجداول ونسخ الصفوف والتحقق من وصول كل شيء، إلى توجيه التطبيق لاستخدام Railway وإعادة كتابة شفرته، وتنتهي بعبارة يعمل تطبيقك الآن على Railway Postgres.

بعد ذلك تظهر على بطاقة قاعدة البيانات في الخدمات السحابيةالسحابة العلامة على Railway.

  • كل جدول وصف ينتقل إلى قاعدة Railway Postgres الخاصة بك، ويحصي MonstarX الصفوف في الجهتين قبل التحويل. فإن لم يتطابق العدد، تتوقف العملية ويبقى التطبيق كما كان.
  • يحتفظ MonstarX بنسخته السابقة دون تغيير، لتتمكن من العودة.
  • تُعاد كتابة شفرة التطبيق لتناسب Postgres، في طلب إنشاء يرسله MonstarX بنفسه.
  • أثناء النقل، تنتظر الطلبات الجديدة في قائمة الانتظار، وزر إيقاف في البطاقة يوقف العملية.

نعم. انقر على إعادة البيانات في بطاقة قاعدة البيانات في الخدمات السحابيةالسحابة وأكّد. ينسخ MonstarX كل شيء إلى قاعدة بياناته ويعيد كتابة الشفرة مجددًا. وتبقى قاعدة بياناتك في Railway كما هي.

  • الرمز يبقى لدى MonstarX. رمز API ومعرّف المشروع ومعرّف البيئة تُحفظ مشفّرة، ولا يستخدمها إلا MonstarX لإدارة Railway. ولا تدخل تطبيقك أبدًا.
  • سلسلة الاتصال تذهب إلى خادم التطبيق فقط، وبعد التحويل فقط. ولا تصل إلى المتصفح أبدًا.
  • لا يمكنك قطع اتصال Railway أو تغيير قاعدة بياناته ما دام التطبيق يستخدمه. أعد البيانات أولًا.
  • إلغاء النشر من Railway لا يزيل إلا الخدمة التي أنشأها MonstarX، ولا يمس قاعدة Postgres الخاصة بك أبدًا.
  • التطبيقات المستوردة تحتفظ بشفرة قاعدة البيانات الخاصة بها: يسلّمها MonstarX سلسلة الاتصال باسم RAILWAY_DATABASE_URL دون أن ينقل بياناتها.
  • العنوان الخاص في Railway لن يعمل. يحتاج MonstarX إلى سلسلة الاتصال العامة للوصول إلى قاعدة البيانات.
هل عليّ النشر على Railway لأستخدم Railway Postgres؟

لا. المهمتان مستقلتان. يمكن أن يبقى تطبيقك منشورًا على MonstarX بينما بياناته في Railway Postgres.

أي سلسلة اتصال ألصق؟

قيمة DATABASE_PUBLIC_URL لخدمة Postgres، بعد تفعيل public networking لها. فلا يمكن الوصول إلى عنوان الشبكة الخاصة من MonstarX.

لماذا رُفض الرمز الذي أدخلته؟

رموز مشاريع Railway لا تستطيع إنشاء الخدمات. أنشئ رمزًا للحساب أو لمساحة العمل من Account Settings → Tokens في Railway بدلًا من ذلك.

هل يمكنني الانتقال من Supabase إلى Railway؟

نعم، على خطوتين: استخدم إعادة البيانات لإعادتها إلى قاعدة بيانات MonstarX، ثم اربط Railway Postgres.

هل سيحتاج مستخدمو تطبيقي إلى إنشاء حسابات من جديد؟

لا. الحسابات صفوف في قاعدة بيانات تطبيقك، فتنتقل مع باقي البيانات وتبقى تعمل.