جدول incoming_referers يتتبع مسارات عناوين URL التي أحالت الزوار إلى منتداك. يحتوي على فهرس فريد، مما يعني أنه لا يمكن أن يكون هناك صفان لهما نفس التركيبة من المسار + النطاق.
قاعدة البيانات الخاصة بك تحتوي على صفين مع path='//' و incoming_domain_id=5. عندما تحاول إعادة بناء هذا الفهرس الفريد أثناء الاستعادة، تجد التكرار وتوقف عملية الاستعادة بأكملها.
لذلك ستحتاج إلى العثور على المكرر في incoming_referers وتنظيفه، ثم إنشاء نسخة احتياطية جديدة للاستعادة على الخادم الجديد.
عذرًا على الإزعاج، لكن يبدو أنني أقوم بشيء خاطئ — بعد تشغيل الأمر “discourse=# select * from incoming_referers where path LIKE ‘%/search/’ ORDER BY incoming_domain_id;”، أحصل على خطأ في بناء الجملة.
حسنًا، قمت الآن بتثبيت “apt install postgresql-client-common”. ومع ذلك، لا زلت أحصل على الخطأ “خطأ: يجب عليك تثبيت حزمة postgresql-client- واحدة على الأقل.”
أنا آسف حقًا، حقًا جدًا على تصرفي بهذه الطريقة الغبية.
لقد قمت الآن بتثبيت Rails، ويبدو أن الأمر قد نجح. كما قمت بتشغيله باستخدام الأمر "rails c". يبدو أن هذا أيضًا يعمل، ولكن عند إدخال الأمر، يظهر بالشكل التالي:
"root@community:/var/discourse# ActiveRecord::Base.connection.execute(<<~SQL)
-bash: syntax error near unexpected token \'<<'
root@community:/var/discourse# SELECT id, path, incoming_domain_id
SELECT: command not found
root@community:/var/discourse# FROM incoming_referers
FROM: command not found
root@community:/var/discourse# WHERE path = ‘//’
WHERE: command not found
root@community:/var/discourse# AND incoming_domain_id = 5
AND: command not found
root@community:/var/discourse# SQL"
أنا أشعر بالحيرة عندما تقول إنك قمت للتو بتثبيت Rails ولا يمكنك الوصول إلى قاعدة البيانات. ربما يكون الأمر مختلفًا لأن النسخة أقدم، لكنني أعتقد أنني أيضًا خارج نطاق خبرتي الآن.
على أي حال، بمجرد دخولك إلى Rails، يجب أن يتغير الموجه (prompt)، لذا يبدو من مخرجاتك أنك لم تدخل إلى وحدة تحكم Rails بعد.
أعتقد حتى أنك لم تدخل إلى الحاوية الفعلية. هل قمت بتشغيل ./launcher enter app؟