ترحيل منتدى phpBB3 إلى Discourse

يبدو أن النسخة الحالية من السكربت تحتوي على بعض الأخطاء. هل يمكنك تحديث ملف settings.yml والتأكد من أن new_categories و category_mappings تبدو كما هو موضح أدناه؟

new_categories: []
category_mappings: {}
11 إعجابًا

@gerhard شكراً لك على النصيحة.. سأجرب ذلك في الحال

إعجاب واحد (1)

شكرًا جزيلاً، لقد نجح الأمر

3 إعجابات

تم دمج المنشور في موضوع موجود: دليل المبتدئين لتثبيت Discourse على Windows 10 لأغراض التطوير

هذا خبر رائع! شكرًا لك. لدي نسخة تجريبية من قاعدة البيانات 3.2 سأجربها، وسأقوم بنسخة من 3.3 لأجربها أيضًا. كنت أود لو أستطيع أن أطلب منكم التعامل مع الأمر، لكن جيوبنا فارغة جدًا.. ههه.

على أي حال، شكرًا مرة أخرى، وأتطلع لتجربة هذا!

إعجابَين (2)

أواجه مشكلة في الاستيراد.. عند تشغيل سكريبت الاستيراد، يتم وضع ملف sqldump الخاص بي، ويظهر الرسالة “بدء استيراد phpBB3…” لكنه يُصدر فورًا تتبعًا للأخطاء مع الخطأ العام:

/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.0/lib/bootsnap/compile_cache.rb:29:in `permission_error’: bootsnap doesn’t have permission to write cache entries in ‘tmp/cache/bootsnap/compile-cache’ (or, less likely, doesn’t have permission to read ‘/usr/local/lib/ruby/2.7.0/set.rb’) (Bootsnap::CompileCache::PermissionError)

من الواضح أنه نوع من خطأ الصلاحيات، لكنني أحاول تحديد ما يجب فعله لإصلاحه.. أي مساعدة موصى بها!

إعجاب واحد (1)

تحديث! تم حل المشكلة! تعديل سريع في الصلاحيات (chmod) داخل الحاوية أصلح تلك المشكلة.

تم الاختبار مع قاعدة بيانات phpBB3.3 مع تطبيق التعديل الذي اقترحته، ويعمل بشكل رائع! أقوم بإجراء اختبارات أكثر شمولاً، لكن كل شيء موجود تقريبًا باستثناء بعض مشكلات BBCode المتوقعة. تم نسخ المستخدمين والرسائل والمنشورات وكل شيء بنجاح. الشيء الوحيد الذي يبدو أنه لم ينجح هو ترحيل كلمات المرور. هذه مسألة بسيطة. قمت بتثبيت الوحدة ورأيت أنها تم تحميلها، لذا لا أعرف لماذا لم تنتقل. لا يهم ذلك، أنا متحمس أخيرًا للتخلص من phpBB.

شكرًا مرة أخرى @gerhard على عملك!

إعجابَين (2)

من الجيد معرفة ذلك. لا تتردد في إرسال رسالة خاصة لي تحتوي على أمثلة لمشاكل BBCode. أنا مهتم بقيمة عمود phpbb_posts.post_text.

3 إعجابات

لقد حاولت استيراد phpBB3 (الإصدار 2.7) مرتين.
في المرة الأولى، لم يتم استيراد أي موضوع على الإطلاق، وتعطلت بيانات المستخدمين.
أعدت تثبيت أوبونتو من الصفر وقمت بإعادة كل شيء، لكن هذه المرة علق الأمر عند جزء import_phpbb3.sh. حيث يتم تحميل قاعدة البيانات ثم يتوقف مع ظهور الخطأ التالي:

بدء استيراد phpBB3...

Traceback (most recent call last):
        20: from script/import_scripts/phpbb3.rb:13:in `<main>'
        19: from script/import_scripts/phpbb3.rb:14:in `<module:ImportScripts>'
        18: from script/import_scripts/phpbb3.rb:15:in `<module:PhpBB3>'
        17: from script/import_scripts/phpbb3.rb:15:in `require_relative'
        16: from /var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:5:in `<top (required)>'
        15: from /var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:5:in `require_relative'
        14: from /var/www/discourse/script/import_scripts/base.rb:16:in `<top (required)>'
        13: from /var/www/discourse/script/import_scripts/base.rb:16:in `require_relative'
        12: from /var/www/discourse/config/environment.rb:4:in `<top (required)>'
        11: from /var/www/discourse/config/environment.rb:4:in `require'
        10: from /var/www/discourse/config/application.rb:70:in `<top (required)>'
         9: from /var/www/discourse/config/application.rb:71:in `<module:Discourse>'
         8: from /var/www/discourse/config/application.rb:96:in `<class:Application>'
         7: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:324:in `require'
         6: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:291:in `load_dependency'
         5: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:324:in `block in require'
         4: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:44:in `require'
         3: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
         2: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:89:in `register'
         1: from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require': cannot load such file -- mocha/version (LoadError)

أي مساعدة ممتنة للغاية.

إعجاب واحد (1)

تحديث حول phpBB 3.3.. شيء كنت أتمنى أن ألاحظه قبل نقل المنتديات: تغيرت طريقة التعامل مع المرفقات في الإصدار 3.3. فبدلاً من استخدام اسم الملف الفعلي، أصبح هناك الآن معرف فريد لكل ملف يتم ربطه في جدول phpbb_attachments. صيغة معرف الملف الفريد هي USERID_سلسلة_عشوائية_محتملة

لا يوجد امتداد للملف أو شيء مشابه، حيث تقوم phpBB 3.3 باستنتاج ذلك من الجدول. لست متأكداً من وجود طريقة لأتمتة هذه العملية، لذا أقوم حالياً باستعادة الصور القديمة على دفعات. قد أتمكن من تسريع العملية لدي لأن لدي نسخة أقدم من الصور قبل تحديث 3.3، لكن يجب التنبيه إلى أن استيراد البيانات من الإصدار 3.3 قد يؤدي إلى تعطل المرفقات، وستواجه وقتاً صعباً خاصة إذا كان لديك آلاف الملفات كما هو حالتي.. لا بأس! حظاً طيباً لمن يختار أن يكون الأرنب التجريبي طواعية

إعجابَين (2)

هل كانت هذه هي أقصى معلومات قدمتها لك؟ قال لي النظام إنه تعذر تحميل مجلد tmp/ بسبب مشاكل في الأذونات، لذا بينما كنت داخل حاوية الاستيراد، نفذت الأمر chmod -R 777 على ذلك المجلد. مرة أخرى، كان هذا فقط لأغراض الاستيراد ولن يؤثر على حاوية “التطبيق” الخاصة بك.

إعجابَين (2)

تمكنت من الاستيراد من phpBB 3.2، لكنني اضطرت إلى:

  • استيراد قاعدة البيانات يدويًا على MariaDB الداخلية عبر الأمر: mysql -u root -p phpbb < /shared/import/mysql/data/phpbb_mysql.sql

  • تعديل ملف settings.yml ليصبح: new_categories: [] category_mappings: {}

  • تكرار تشغيل سكريبت الاستيراد عدة مرات لأن المنشورات والمواضيع كانت تُظهر أخطاء في المرة الأولى

بعد ذلك، سار كل شيء على ما يرام…

إعجابَين (2)

مرحباً بالجميع.
لدي مشكلة.
هناك https://discourse.example.com/
أريد استيراد قاعدة بيانات من https://forum.old.example.com/
اتبعت جميع الخطوات من هذا الدليل
أنشأت نسخة احتياطية لقاعدة البيانات وسماها phpbb_mysql.sql ووضعته في

/var/discourse/shared/standalone/import/data/

بعد أن أقوم بـ

/var/discourse/launcher enter import
import_phpbb3.sh

أحصل على الخطأ التالي:

Table ‘phpbb.phpbb_config’ doesn’t exist

هل يمكن أن يكون الأمر متعلقاً بملف settings.yml؟

يرجى مساعدتي في حل هذه المشكلة

إعجاب واحد (1)

تأكد من أن table_prefix صحيح. هل يظهر كـ phpbb_ في لوحة التحكم؟

إعجابَين (2)

نعم، اللاحقة الخاصة بي صحيحة

إعجاب واحد (1)

إذا كان فهمي صحيحًا، فيجب أن تكون قيمة schema في ملف settings.yml مضبوطة على teamlab_forum_saas.

إعجابَين (2)

هذه هي اسم قاعدة البيانات. هل هذا هو المخطط؟

إعجاب واحد (1)

هذا صحيح. في MySQL، يُعتبر المخطط مرادفًا لقاعدة البيانات. :slightly_smiling_face:

3 إعجابات

لحظة واحدة فقط، سأحاول.

إعجاب واحد (1)

شكرًا جزيلاً لك. لقد ساعد :+1: :clap:

إعجابَين (2)