# Migrate a phpBB3 forum to Discourse

**URL:** https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810
**Category:** Migrating to Discourse
**Tags:** how-to
**Created:** [05.Июль.2015 22:02:57 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810 "2015-07-05T22:02:57Z")
**Posts on this page:** 20
**Page:** 21

<div class="post-metadata">

### Author: ![Dannii](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/dannii/32/129087_2.png) [@Dannii](https://meta.discourse.org/u/Dannii)
#### Post date: [03.Апрель.2023 22:24:22 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/735 "2023-04-03T22:24:22Z")

</div>

Возможно ли импортировать форумы phpBB в существующий форум Discourse, то есть объединить их? Я предполагаю, что это зависит от настроек сопоставления категорий.

Есть ли какие-либо проблемы, о которых стоит знать?

Объединяются ли пользователи, если у них одинаковый адрес электронной почты?

---

<div class="post-metadata">

### Author: ![shyguy](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/shyguy/32/295079_2.png) [@shyguy](https://meta.discourse.org/u/shyguy)
#### Post date: [04.Апрель.2023 04:57:38 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/736 "2023-04-04T04:57:38Z")

</div>

> [@Dannii](#):
>
> Возможно ли импортировать форумы phpBB в существующий форум Discourse, то есть объединить их? Я предполагаю, что это зависит от настроек сопоставления категорий.

Да. Если вы не настроите собственное сопоставление категорий в файле настроек, новые категории будут создаваться по мере необходимости во время импорта. Если в Discourse уже существует категория, название которой совпадает с названием категории из phpBB, они будут объединены.

> [@Dannii](#):
>
> Есть ли какие-либо проблемы, о которых следует знать?

Да, конечно. Вот тема, где подробно описаны проблемы, с которыми я столкнулся. Там есть мои советы, а также репозиторий с моими объединёнными обновлениями для импортера.

> [@My phpBB Migration Journey (postgresql)](https://meta.discourse.org/t/my-phpbb-migration-journey-postgresql/259374):
>
> i’m sharing my findings as i make my way through a migration from phpBB3 to discourse. solutions include: postgres source db emoji tweaks to the importer (fixing quote bug, improved bbcode support (including youtube), attachment comments) soft deleted posts being imported as normal posts i’m super picky, so if you follow along, you should be able to get a pretty good result. i’m considering moving to discourse from phpbb (installed version history: 3.2.1 - 3.2.8). problem is, i use postgre…

> [@Dannii](#):
>
> Объединяются ли пользователи, если у них одинаковый адрес электронной почты?

Я точно не помню всех условий, но да, пользователи автоматически объединяются во время импорта.

---

<div class="post-metadata">

### Author: ![sunjam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sunjam/32/175682_2.png) [@sunjam](https://meta.discourse.org/u/sunjam)
#### Post date: [30.Июнь.2023 15:50:17 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/737 "2023-06-30T15:50:17Z")

</div>

Меня интересует, можно ли объединить форум phpBB3 с Discourse, сохранив все импортированные темы только для чтения. Я поискал в теме, но не нашел упоминания об этом. Спасибо.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [30.Июнь.2023 16:22:43 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/738 "2023-06-30T16:22:43Z")

</div>

Вы можете изменить скрипт импорта для архивирования всех созданных тем, или, возможно, будет проще сделать это массово после выполнения скрипта. Примеры см. по ссылке: [Administrative Bulk Operations](https://meta.discourse.org/t/administrative-bulk-operations/118349).

---

<div class="post-metadata">

### Author: ![rickbarrette](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rickbarrette/32/119222_2.png) [@rickbarrette](https://meta.discourse.org/u/rickbarrette)
#### Post date: [02.Декабрь.2023 14:40:38 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/740 "2023-12-02T14:40:38Z")

</div>

Здравствуйте,

У меня возникла проблема при запуске импортера. Похоже, ошибка происходит во время импорта пользователей или сразу после него. Я приложил стек вызовов и короткое 20-секундное видео вывода.

Пожалуйста, дайте рекомендации.

```plaintext
0x00007fe87a88bb10 /var/www/discourse/script/import_scripts/phpbb3/importers/user_importer.rb:87>}
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/validations.rb:80:in `raise_validation_error': Validation failed: Name can't be blank (ActiveRecord::RecordInvalid)
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/validations.rb:53:in `save!'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:302:in `block in save!'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:302:in `save!'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/suppressor.rb:54:in `save!'
        from /var/www/discourse/script/import_scripts/base.rb:361:in `block in create_user'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
        from /var/www/discourse/script/import_scripts/base.rb:360:in `create_user'
        from /var/www/discourse/script/import_scripts/base.rb:278:in `block in create_users'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/mysql2/alias_method.rb:8:in `each'
        from /var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/mysql2/alias_method.rb:8:in `each'
        from /var/www/discourse/script/import_scripts/base.rb:266:in `create_users'
        from /var/www/discourse/script/import_scripts/phpbb3/importer.rb:106:in `block in import_anonymous_users'
        from /var/www/discourse/script/import_scripts/base.rb:948:in `block in batches'
        from /var/www/discourse/script/import_scripts/base.rb:947:in `loop'
        from /var/www/discourse/script/import_scripts/base.rb:947:in `batches'
        from /var/www/discourse/script/import_scripts/phpbb3/importer.rb:293:in `batches'
        from /var/www/discourse/script/import_scripts/phpbb3/importer.rb:102:in `import_anonymous_users'
        from /var/www/discourse/script/import_scripts/phpbb3/importer.rb:33:in `execute'
        from /var/www/discourse/script/import_scripts/base.rb:47:in `perform'
        from /var/www/discourse/script/import_scripts/phpbb3/importer.rb:22:in `perform'
        from script/import_scripts/phpbb3.rb:35:in `<module:PhpBB3>'
        from script/import_scripts/phpbb3.rb:16:in `<module:ImportScripts>'
        from script/import_scripts/phpbb3.rb:15:in `<main>'

```

РЕДАКТИРОВАНИЕ:

Похоже, проблема связана с анонимными пользователями. Думаю, я проверю свою базу данных.

```plaintext
 def map_anonymous_user(row)
      username = row[:post_username]

      {
        id: @settings.prefix(username),
        email: "anonymous_#{SecureRandom.hex}@no-email.invalid",
        username: username,
        name: @settings.username_as_name ? username : "",
        created_at: Time.zone.at(row[:first_post_time]),
        active: true,
        trust_level: TrustLevel[0],
        approved: true,
        approved_by_id: Discourse.system_user.id,
        approved_at: Time.now,
        post_create_action:
          proc do |user|
            row[:user_inactive_reason] = Constants::INACTIVE_MANUAL
            row[:ban_reason] = "Anonymous user from phpBB3" # TODO i18n
            suspend_user(user, row, true)
          end,
      }
    end

```

РЕДАКТИРОВАНИЕ

Мне удалось обойти ошибку, изменив эту строку в методе map\_anonymous\_user. Оказалось, что по умолчанию имя устанавливалось в пустую строку, поэтому я просто вставил туда слово.

Изменил это

```plaintext
name: @settings.username_as_name ? username : "",

```

на это

```plaintext
name: @settings.username_as_name ? username : "Anonymous ",

```

---

<div class="post-metadata">

### Author: ![Carleas](https://avatars.discourse-cdn.com/v4/letter/c/57b2e6/32.png) [@Carleas](https://meta.discourse.org/u/Carleas)
#### Post date: [23.Февраль.2024 18:32:50 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/741 "2024-02-23T18:32:50Z")

</div>

Могу ли я удалить старые посты перед запуском инкрементального импорта? Я успешно выполнил импорт локально в тестовой установке, восстановил его на сервере с Docker-установкой и планирую запустить импорт новых постов там. Однако, даже если игнорировать уже импортированные посты, запуск импорта на сервере занимает часы. Мой форум довольно большой (1,3 млн постов), а диск на сервере медленный, поэтому даже загрузка файла .sql занимает часы.

Вызовет ли это проблемы, если я сделаю что-то вроде `DELETE FROM phpbb_posts WHERE post_id < 2926807` локально, затем даммп и загрузку этого на сервер и запущу импорт как обычно?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [23.Февраль.2024 18:47:49 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/742 "2024-02-23T18:47:49Z")

</div>

Я добавил настройку `IMPORT_AFTER` в некоторые скрипты, чтобы они импортировали только данные, полученные после определённой даты. Таким образом, мне нужно будет изменить SQL-запрос, который загружает сообщения, чтобы он получал только те, что были созданы за день до последнего дампа данных.

Однако, если у вас очень медленный диск, скорее всего, вы столкнётесь с трудностями при размещении Discourse. Устраивает ли вас производительность с имеющимися данными?

---

<div class="post-metadata">

### Author: ![Carleas](https://avatars.discourse-cdn.com/v4/letter/c/57b2e6/32.png) [@Carleas](https://meta.discourse.org/u/Carleas)
#### Post date: [23.Февраль.2024 19:09:46 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/743 "2024-02-23T19:09:46Z")

</div>

Да, для обычного использования я буду применять более быстрый диск, но его недостаточно для размещения нескольких копий базы данных одновременно, поэтому я перенаправляю /shared/import на более крупный, но медленный диск в секции volumes файла import.yml. Этот трюк отлично сработал при восстановлении начальной резервной копии: после того как восстановление не удалось из-за нехватки места (хотя у меня было свободно 18 ГБ, а база данных занимала 6 ГБ — я думаю, я видел, где вы упоминали, что при восстановлении создаются три копии базы данных), я перенаправил /shared/tmp на медленный диск. Но на тот момент простои не были проблемой.

Так что в повседневной работе ни размер, ни скорость не являются проблемой: мой форум довольно тихий, просто старый.

Я посмотрю, как можно модифицировать SQL в скриптах. Спасибо!

---

<div class="post-metadata">

### Author: ![user50](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/user50/32/368190_2.png) [@user50](https://meta.discourse.org/u/user50)
#### Post date: [05.Март.2024 22:15:42 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/744 "2024-03-05T22:15:42Z")

</div>

В файле settings.yml содержимое для подключения к MySQL выглядит так:

 ![image](https://global.discourse-cdn.com/meta/original/4X/4/8/5/4858ff29633c5080711b5b7147bc4b70917358d1.png)  
Где можно указать имя базы данных?

---

<div class="post-metadata">

### Author: ![cocococosti](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cocococosti/32/231474_2.png) [@cocococosti](https://meta.discourse.org/u/cocococosti)
#### Post date: [06.Март.2024 03:09:05 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/745 "2024-03-06T03:09:05Z")

</div>

Имя базы данных должно быть указано в параметре `schema`. Да, название этого параметра немного сбивает с толку. Вы можете увидеть это [здесь](https://github.com/discourse/discourse/blob/generic-import-add-suspender/script/import_scripts/phpbb3/database/database.rb#L44) в коде: он передаётся как имя базы данных.

---

<div class="post-metadata">

### Author: ![Scott\_Darnell](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/scott_darnell/32/364360_2.png) [@Scott\_Darnell](https://meta.discourse.org/u/Scott_Darnell)
#### Post date: [06.Март.2024 04:04:24 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/746 "2024-03-06T04:04:24Z")

</div>

[https://www.loom.com/share/1f66315779af4cf7b286c8541d4f3f09](https://www.loom.com/share/1f66315779af4cf7b286c8541d4f3f09)

Привет! Я записал короткое видео о проблеме, с которой мы столкнулись при импорте. Мы переносим около 650 000 постов.

Спасибо большое!

---

<div class="post-metadata">

### Author: ![user50](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/user50/32/368190_2.png) [@user50](https://meta.discourse.org/u/user50)
#### Post date: [06.Март.2024 06:37:50 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/747 "2024-03-06T06:37:50Z")

</div>

> [@Герхард Шлагер](#):
>
> ```plaintext
> /var/discourse/launcher enter import
> import_phpbb3.sh
> 
> ```

https://www.loom.com/share/1f66315779af4cf7b286c8541d4f3f09?sid=11a46d3c-8510-43a1-82e9-1a3524cbb365

---

<div class="post-metadata">

### Author: ![Scott\_Darnell](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/scott_darnell/32/364360_2.png) [@Scott\_Darnell](https://meta.discourse.org/u/Scott_Darnell)
#### Post date: [06.Март.2024 16:21:18 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/748 "2024-03-06T16:21:18Z")

</div>

Привет. Есть ли способ выполнять импорт построчно? У нас возникают проблемы с завершением скрипта. Некоторые вещи работают, например пользователи и аватары, другие — нет. Я переустанавливал сервер около четырёх раз, так как где-то прочитал, что после ошибки при импорте требуется чистая установка.

Другие детали указаны в видео, которое я опубликовал. Любая помощь будет оценена по достоинству.

---

<div class="post-metadata">

### Author: ![Scott\_Darnell](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/scott_darnell/32/364360_2.png) [@Scott\_Darnell](https://meta.discourse.org/u/Scott_Darnell)
#### Post date: [06.Март.2024 16:26:12 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/749 "2024-03-06T16:26:12Z")

</div>

Привет. Я уже около 18 часов занимаюсь миграцией, но всё ещё не могу добиться её успешного завершения. Не могли бы вы посмотреть моё видео и дать совет: есть ли какие-то полезные приёмы или, возможно, что-то упущено в настройках? Нам нужны только посты, темы, личные сообщения и категории. Аватары и пользователи работают. Сервер чистый, Ubuntu 22.04.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [06.Март.2024 16:26:38 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/750 "2024-03-06T16:26:38Z")

</div>

> [@Scott\_Darnell](#):
>
> Я переустанавливал свой сервер около 4 раз, так как где-то прочитал, что после сбоя импорта требуется чистая установка.

Более простое решение — сделать резервную копию после создания сайта, чтобы можно было восстановить её. Другой способ получить чистую базу данных — выполнить `rake db:drop db:create db:migrate`, но для этого нужно выполнить несколько дополнительных действий. Если вы не можете догадаться, что именно нужно сделать, исходя из сообщений об ошибках, то лучше воспользоваться решением с резервным копированием и восстановлением; к тому же, оно может оказаться быстрее.

> [@Scott\_Darnell](#):
>
> Есть ли способ выполнять импорт построчно? У нас возникают проблемы с завершением скрипта. Некоторые элементы работают, например пользователи и аватары, другие — нет.

Вы можете добавить несколько отладочных операторов `puts`, хотя структура скрипта phpbb3 может быть немного запутанной для тех, кто плохо знает Ruby.

Кроме того, скрипт можно запускать несколько раз — он пропустит уже выполненные операции, поэтому сбрасывать базу данных нужно только тогда, когда вы внесли изменения, требующие полного перезапуска (то есть когда поведение при импорте уже сохранённых данных должно измениться).

> [@Scott\_Darnell](#):
>
> Не могли бы вы посмотреть моё видео?

Это выходит за рамки того, что я могу сделать бесплатно. Если у вас есть бюджет, вы можете связаться со мной напрямую или написать в канал #Marketplace.

---

<div class="post-metadata">

### Author: ![Scott\_Darnell](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/scott_darnell/32/364360_2.png) [@Scott\_Darnell](https://meta.discourse.org/u/Scott_Darnell)
#### Post date: [06.Март.2024 18:21:30 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/752 "2024-03-06T18:21:30Z")

</div>

Скрипт импорта, похоже, не работает. Проблема показана в видео. Будем признательны, если кто-нибудь из команды Discourse Migrations сможет разобраться.

Если поддержка платная, не могли бы вы указать стоимость миграции? Я понимал, что это место, где мы задаём вопросы о том, как заставить скрипт работать. Я не против оплаты, просто думал, что это проект с открытым исходным кодом, и именно здесь мы можем задавать вопросы.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [06.Март.2024 18:59:46 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/753 "2024-03-06T18:59:46Z")

</div>

> [@Scott\_Darnell](#):
>
> Я не понимаю. Мы использовали скрипт на практически ванильной доске. Скрипт не работает. Видео демонстрирует проблему с невозможностью выполнения скрипта.

Я хочу сказать, что я здесь волонтёр, и не готов бесплатно смотреть видео, в основном из-за моего иррационального неприятия видеоконтента. Но я не единственный такой. Многие люди любят смотреть видео.

> [@Scott\_Darnell](#):
>
> Кроме того, скрипт не пропускает уже выполненные действия; он постоянно импортирует пользователей каждый раз.

То есть каждый раз при запуске он создаёт дубликаты пользователей, созданных в предыдущем запуске? Не могу представить, чтобы такое было возможно. Вы уверены? Так работать он не должен.

Кажется, будто данные импортируются снова, но процесс проходит гораздо быстрее, поскольку фактически ничего не выполняется: у уже импортированных данных установлен пользовательское поле `import_id`, которое предотвращает повторный импорт. Если данные дублируются при каждом запуске, значит, происходит что-то очень странное.

> [@Scott\_Darnell](#):
>
> Просто подумал, что это проект с открытым исходным кодом, и это место, где можно задавать вопросы.

Это так. Иногда людям нужна или требуется помощь, которую невозможно получить бесплатно.

---

<div class="post-metadata">

### Author: ![Scott\_Darnell](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/scott_darnell/32/364360_2.png) [@Scott\_Darnell](https://meta.discourse.org/u/Scott_Darnell)
#### Post date: [07.Март.2024 02:00:15 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/754 "2024-03-07T02:00:15Z")

</div>

Понял. Не могли бы вы опубликовать свои расценки на миграцию? Я понимаю, что скрипт, похоже, не работает, и требуется платная поддержка. Для меня это абсолютно нормально.

---

<div class="post-metadata">

### Author: ![cocococosti](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cocococosti/32/231474_2.png) [@cocococosti](https://meta.discourse.org/u/cocococosti)
#### Post date: [07.Март.2024 02:10:24 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/755 "2024-03-07T02:10:24Z")

</div>

> [@Scott\_Darnell](#):
>
> Проблема заключается в видео. Если кто-то из команды миграций Discourse сможет разобраться в этом, мы будем признательны.
> 
> Если поддержка платная, не могли бы вы указать стоимость миграции?

Миграции — довольно сложный процесс. Каждая из них сопряжена с уникальными вызовами, так как данные каждого форума индивидуальны. Отладка проблем миграции может занять несколько часов и требует детального анализа логов, базы данных, кода и т. д. Сложно помочь, просто глядя на эти сообщения, извините, что не могу быть более полезен! Вот наш FAQ по миграциям: [Migrating to Discourse | Discourse - Civilized Discussion](https://www.discourse.org/migrations)

---

<div class="post-metadata">

### Author: ![Scott\_Darnell](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/scott_darnell/32/364360_2.png) [@Scott\_Darnell](https://meta.discourse.org/u/Scott_Darnell)
#### Post date: [07.Март.2024 04:09:28 UTC](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810/756 "2024-03-07T04:09:28Z")

</div>

Спасибо за ссылку. Я, кажется, разобрался с проблемой, и скрипт импорта теперь работает. Сейчас обработано примерно 100 000 из 666 357 сообщений. Chat GPT помог выявить некоторые ошибки, связанные с правами доступа, и другие проблемы.

[Previous page](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810.md?page=20)

[Next page](https://meta.discourse.org/t/migrate-a-phpbb3-forum-to-discourse/30810.md?page=22)
