اضطررت إلى نقل منتدى Discourse مهجور. لحسن الحظ، كان لدينا عدة مشرفين، مما جعل ذلك ممكنًا مع تنزيل نسخة احتياطية. استخدمنا وعاء S3 لتخزين الأصول، مما شكل نوعًا من المشكلة. سأقدم طلب ميزة في هذه النقطة:
جعل من الممكن تضمين أصول S3 في النسخ الاحتياطية
اكتشفت (غير متأكد مما إذا كان ذلك قبل أو بعد إعادة بناء المنشورات) أن عناوين URL لأصول S3 تم إعادة كتابتها لتصبح عناوين داخلية. لذا، استخرجت جميع عناوين URL الخاصة بـ original و optimized من S3 من ملف قاعدة البيانات وقمت بتحميلها (نوعًا ما) يدويًا. بعد نقلها إلى المكان الصحيح، ظهرت جميع الصور المفقودة. … سيكون من الرائع وجود ميزة تلقائية لذلك.
إذا لم يفت الأوان (أي أن هناك نشاطًا على المنتدى حدث ولا ترغب في فقده) وإذا كانت لديك بيانات اعتماد S3، فربما أنصحك بوضع بيانات اعتماد S3 في ملف app.yml وإعادة تشغيل عملية الاستعادة. من هناك، يمكنك على الأرجح تعيين الإعداد المخفي، وإجراء نسخة احتياطية، ثم استعادتها على خادم لا يحتوي على S3.
لكن أعتقد أن هذا ليس هو الحال. وليس واضحًا تمامًا ما قد تكون المشكلات، حيث إنك حتى أنت لا تتذكر بالضبط ما قمت به ومتى.
إذا كان هناك شيء مفقود (وكان لديك بيانات اعتماد S3)، فقد أحاول استخدام أداة S3 لسحب جميع الملفات المرفوعة، ثم التعديل على قاعدة البيانات لجعلها تشير إليها. لكنني لست ماهرًا بما يكفي في ذلك لأشرح هنا كيفية القيام بذلك.