【发布时间】:2018-08-11 21:04:04
【问题描述】:
我有一个客户需要/想要将他们的 Drupal 7 站点升级到 Drupal 8。该站点有超过 50,000 篇文章,并且大部分内容是使用原始“文章”节点/内容类型生成的......但是原始节点已被定制为包含更多字段。客户希望我为新的站点功能创建另一种自定义内容类型,但我更愿意在开始处理新功能之前将站点升级到 Drupal 8,这样我就不必经历更多的迁移麻烦未来。
我已经阅读了从这个页面开始的所有 Drupal 6/7 到 8 迁移文档:https://www.drupal.org/docs/8/upgrade/upgrading-from-drupal-6-or-7-to-drupal-8
我已尝试将迁移工具与 webui 版本和 drush 版本一起使用。两种方法似乎都使用相同的迁移代码,因为两种方法都会产生相同的错误(见下文):
首先,这是“drush migrate-status”给我们的:
serverpilot@XXX.XXX.XXX.XXX:~/apps/therooster-d8/public$ drush migrate-status
Group: Import from Drupal 7 (migrate_drupal_7) Status Total Imported Unprocessed Last imported
upgrade_action_settings Idle 0 0 0
upgrade_block_content_type Idle 1 0 1
upgrade_d7_action Idle 15 0 15
upgrade_d7_aggregator_settings Idle 0 0 0
upgrade_d7_dblog_settings Idle 1 0 1
upgrade_d7_file_private Idle 0 0 0
upgrade_d7_filter_settings Idle 1 0 1
upgrade_d7_global_theme_settings Idle 1 0 1
upgrade_d7_image_settings Idle 0 0 0
upgrade_d7_image_styles Idle 13 0 13
upgrade_d7_node_settings Idle 1 0 1
upgrade_d7_search_settings Idle 0 0 0
upgrade_d7_system_authorize Idle 0 0 0
upgrade_d7_system_cron Idle 0 0 0
upgrade_d7_system_date Idle 1 0 1
upgrade_d7_system_file Idle 1 0 1
upgrade_d7_system_mail Idle 0 0 0
upgrade_d7_system_performance Idle 1 0 1
upgrade_d7_theme_settings Idle 2 0 2
upgrade_d7_tracker_settings Idle 0 0 0
upgrade_d7_url_alias Idle 10890 0 10890
upgrade_d7_user_flood Idle 0 0 0
upgrade_d7_user_mail Idle 1 0 1
upgrade_file_settings Idle 0 0 0
upgrade_menu_settings Idle 0 0 0
upgrade_search_page Idle 0 0 0
upgrade_statistics_settings Idle 1 0 1
upgrade_system_image Idle 1 0 1
upgrade_system_image_gd Idle 1 0 1
upgrade_system_logging Idle 1 0 1
upgrade_system_maintenance Idle 0 0 0
upgrade_system_rss Idle 0 0 0
upgrade_system_site Idle 1 0 1
upgrade_taxonomy_settings Idle 0 0 0
upgrade_text_settings Idle 0 0 0
upgrade_update_settings Idle 1 0 1
upgrade_block_content_body_field Idle 1 0 1
upgrade_block_content_entity_display Idle 1 0 1
upgrade_block_content_entity_form_display Idle 1 0 1
upgrade_d7_filter_format Idle 5 0 5
upgrade_d7_custom_block Idle 10 0 10
upgrade_d7_user_role Idle 6 0 6
upgrade_d7_block Idle 345 0 345
upgrade_d7_field Idle 46 0 46
upgrade_d7_node_type Idle 10 0 10
upgrade_d7_comment_type Idle 10 0 10
upgrade_d7_taxonomy_vocabulary Idle 3 0 3
upgrade_d7_field_instance Idle 64 0 64
upgrade_d7_file Idle 50826 0 50826
upgrade_user_picture_field Idle 1 0 1
upgrade_user_picture_field_instance Idle 1 0 1
upgrade_user_picture_entity_display Idle 1 0 1
upgrade_user_picture_entity_form_display Idle 1 0 1
upgrade_d7_user Idle 107 0 107
upgrade_d7_comment_field Idle 10 0 10
upgrade_d7_comment_field_instance Idle 10 0 10
upgrade_d7_node_ad Idle 204 0 204
upgrade_d7_node_article Idle 9933 0 9933
upgrade_d7_node_background_ad Idle 1 0 1
upgrade_d7_node_establishment Idle 391 0 391
upgrade_d7_node_green_guide Idle 6 0 6
upgrade_d7_node_happy_hour Idle 176 0 176
upgrade_d7_node_homepage_config Idle 2 0 2
upgrade_d7_node_page Idle 7 0 7
upgrade_d7_node_sidebar_config Idle 1 0 1
upgrade_d7_node_webform Idle 1 0 1
upgrade_d7_comment Idle 0 0 0
upgrade_d7_comment_entity_display Idle 10 0 10
upgrade_d7_comment_entity_form_display Idle 10 0 10
upgrade_d7_comment_entity_form_display_subject Idle 10 0 10
upgrade_d7_view_modes Idle 5 0 5
upgrade_d7_field_formatter_settings Idle 97 0 97
upgrade_d7_field_instance_widget_settings Idle 64 0 64
upgrade_d7_google_analytics_settings Idle 1 0 1
upgrade_d7_google_analytics_user_settings Idle 107 0 107
upgrade_d7_menu Idle 7 0 7
upgrade_d7_menu_links Idle 88 0 88
upgrade_d7_node_revision_ad Idle 0 0 0
upgrade_d7_node_revision_article Idle 0 0 0
upgrade_d7_node_revision_background_ad Idle 0 0 0
upgrade_d7_node_revision_establishment Idle 0 0 0
upgrade_d7_node_revision_green_guide Idle 0 0 0
upgrade_d7_node_revision_happy_hour Idle 0 0 0
upgrade_d7_node_revision_homepage_config Idle 0 0 0
upgrade_d7_node_revision_page Idle 0 0 0
upgrade_d7_node_revision_sidebar_config Idle 0 0 0
upgrade_d7_node_revision_webform Idle 0 0 0
upgrade_d7_node_title_label Idle 10 0 10
upgrade_d7_shortcut_set Idle 1 0 1
upgrade_d7_shortcut Idle 4 0 4
upgrade_d7_shortcut_set_users Idle 0 0 0
upgrade_d7_taxonomy_term_category Idle 56 0 56
upgrade_d7_taxonomy_term_tags Idle 0 0 0
upgrade_d7_taxonomy_term_vicinity Idle 12 0 12
Group: Beer Imports (beer) Status Total Imported Unprocessed Last imported
beer_term Idle 3 0 3
beer_user Idle 4 0 4
beer_node Idle 3 0 3
beer_comment Idle 5 0 5
Group: Wine Imports (wine) Status Total Imported Unprocessed Last imported
weather_soap Idle 50 0 50
wine_role_json Idle 2 0 2
wine_role_xml Idle 2 0 2
wine_terms Idle 23 0 23
wine_variety_multi_xml Idle 4 0 4
Group: Default (default) Status Total Imported Unprocessed Last imported
block_content_type Idle 1 1 0
block_content_body_field Idle 1 1 0
block_content_entity_display Idle 1 1 0
block_content_entity_form_display Idle 1 1 0
user_picture_field Idle 1 0 1
d6_upload_field Idle 1 0 1
这就是我执行“drush migrate-import --all”时发生的情况:
serverpilot@XXX.XXX.XXX.XXX:~/apps/therooster-d8/public$ drush migrate-import --all
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_action_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_block_content_type' [status]
The "pathauto_node_update_action" plugin does not exist. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/lib/Drupal/Component/Plugin/Discovery/DiscoveryTrait.php:52)
The "pathauto_taxonomy_term_update_action" plugin does not exist. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/lib/Drupal/Component/Plugin/Discovery/DiscoveryTrait.php:52)
The "pathauto_user_update_action" plugin does not exist. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/lib/Drupal/Component/Plugin/Discovery/DiscoveryTrait.php:52)
Processed 15 items (11 created, 0 updated, 3 failed, 1 ignored) - done with 'upgrade_d7_action' [status]
upgrade_d7_action Migration - 3 failed. [error]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_aggregator_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_dblog_settings' [status]
Processed 0 items (0 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_file_private' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_filter_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_global_theme_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_image_settings' [status]
Processed 13 items (13 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_image_styles' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_node_settings' [status]
Processed 1 item (0 created, 0 updated, 0 failed, 1 ignored) - done with 'upgrade_d7_search_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_system_authorize' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_system_cron' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_system_date' [status]
Processed 1 item (0 created, 0 updated, 0 failed, 1 ignored) - done with 'upgrade_d7_system_file' [status]
Processed 1 item (0 created, 0 updated, 0 failed, 1 ignored) - done with 'upgrade_d7_system_mail' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_system_performance' [status]
Processed 0 items (0 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_theme_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_tracker_settings' [status]
Processed 10890 items (10890 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_url_alias' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_user_flood' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_user_mail' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_file_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_menu_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_search_page' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_statistics_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_system_image' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_system_image_gd' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_system_logging' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_system_maintenance' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_system_rss' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_system_site' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_taxonomy_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_text_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_update_settings' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_block_content_body_field' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with [status]
'upgrade_block_content_entity_display'
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with [status]
'upgrade_block_content_entity_form_display'
Missing filter plugin: filter_null. [error]
Processed 5 items (5 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_filter_format' [status]
Processed 10 items (10 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_custom_block' [status]
Processed 6 items (6 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_user_role' [status]
Processed 345 items (38 created, 0 updated, 0 failed, 307 ignored) - done with 'upgrade_d7_block' [status]
Attempt to create a field storage field_establishment with no type. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldStorageConfig.php:252)
Attempt to create a field storage field_daily_menu with no type. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldStorageConfig.php:252)
Attempt to create a field storage field_articles with no type. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldStorageConfig.php:252)
Attempt to create a field storage field_articles with no type. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldStorageConfig.php:252)
Attempt to create a field storage field_trending_articles with no type. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldStorageConfig.php:252)
Processed 46 items (41 created, 0 updated, 5 failed, 0 ignored) - done with 'upgrade_d7_field' [status]
upgrade_d7_field Migration - 5 failed. [error]
Processed 10 items (10 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_node_type' [status]
Processed 10 items (10 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_comment_type' [status]
Processed 3 items (3 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_d7_taxonomy_vocabulary' [status]
Attempt to create a field field_establishment that does not exist on entity type node. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldConfig.php:293)
Attempt to create a field field_daily_menu that does not exist on entity type node. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldConfig.php:293)
Attempt to create a field field_articles that does not exist on entity type node. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldConfig.php:293)
Attempt to create a field field_articles that does not exist on entity type node. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldConfig.php:293)
Attempt to create a field field_articles that does not exist on entity type taxonomy_term. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldConfig.php:293)
Attempt to create a field field_trending_articles that does not exist on entity type node. [error]
(/srv/users/serverpilot/apps/therooster-d8/public/core/modules/field/src/Entity/FieldConfig.php:293)
Processed 64 items (58 created, 0 updated, 6 failed, 0 ignored) - done with 'upgrade_d7_field_instance' [status]
upgrade_d7_field_instance Migration - 6 failed. [error]
Processed 50826 items (50817 created, 0 updated, 9 failed, 0 ignored) - done with 'upgrade_d7_file' [status]
upgrade_d7_file Migration - 9 failed. [error]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with 'upgrade_user_picture_field' [status]
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with [status]
'upgrade_user_picture_field_instance'
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with [status]
'upgrade_user_picture_entity_display'
Processed 1 item (1 created, 0 updated, 0 failed, 0 ignored) - done with [status]
'upgrade_user_picture_entity_form_display'
InvalidArgumentException: Passed variable is not an array or object in [error]
/srv/users/serverpilot/apps/therooster-d8/public/core/modules/migrate/src/Plugin/migrate/process/Flatten.php:52
Stack trace:
#0
/srv/users/serverpilot/apps/therooster-d8/public/core/modules/migrate/src/Plugin/migrate/process/Flatten.php(52):
ArrayIterator->__construct(NULL)
#1 /srv/users/serverpilot/apps/therooster-d8/public/core/modules/migrate/src/MigrateExecutable.php(380):
Drupal\migrate\Plugin\migrate\process\Flatten->transform(NULL,
Object(Drupal\migrate_tools\MigrateExecutable), Object(Drupal\migrate\Row), 'permissions')
#2
/srv/users/serverpilot/apps/therooster-d8/public/core/modules/migrate/src/Plugin/migrate/process/MigrationLookup.php(223):
Drupal\migrate\MigrateExecutable->processRow(Object(Drupal\migrate\Row), Array)
#3 /srv/users/serverpilot/apps/therooster-d8/public/core/modules/migrate/src/MigrateExecutable.php(366):
Drupal\migrate\Plugin\migrate\process\MigrationLookup->transform(Array,
Object(Drupal\migrate_tools\MigrateExecutable), Object(Drupal\migrate\Row), 'roles')
#4 /srv/users/serverpilot/apps/therooster-d8/public/core/modules/migrate/src/MigrateExecutable.php(203):
Drupal\migrate\MigrateExecutable->processRow(Object(Drupal\migrate\Row))
#5 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/includes/drush.inc(721):
Drupal\migrate\MigrateExecutable->import()
#6 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/includes/drush.inc(712):
drush_call_user_func_array(Array, Array)
#7
/srv/users/serverpilot/apps/therooster-d8/public/modules/contrib/migrate_tools/migrate_tools.drush.inc(303):
drush_op(Array)
#8 [internal function]: _drush_migrate_tools_execute_migration(Object(Drupal\user\Plugin\migrate\User),
'upgrade_d7_user', Array)
#9
/srv/users/serverpilot/apps/therooster-d8/public/modules/contrib/migrate_tools/migrate_tools.drush.inc(267):
array_walk(Array, '_drush_migrate_...', Array)
#10 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/includes/command.inc(422):
drush_migrate_tools_migrate_import()
#11 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/includes/command.inc(231):
_drush_invoke_hooks(Array, Array)
#12 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/includes/command.inc(199): drush_command()
#13 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/lib/Drush/Boot/BaseBoot.php(67):
drush_dispatch(Array)
#14 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/includes/preflight.inc(66):
Drush\Boot\BaseBoot->bootstrap_and_dispatch()
#15 /srv/users/serverpilot/apps/therooster-d8/vendor/drush/drush/drush.php(12): drush_main()
#16 {main}
基本上,将近 10K 的文章不会迁移过来。这主要是我需要的。我已经尝试匹配并启用从 Drupal 7 到 8 可以匹配的所有模块......但也许我错过了训练有素的眼睛能够从上面的错误中看到的东西?非常感谢您的帮助。谢谢
【问题讨论】:
-
关于 10k 篇文章,我认为您在谈论“内容”。为此,我将使用备份和迁移模块(首先修改新闻站点中的文章内容类型和字段)。
-
这实际上是个好主意。我将尝试使用 backup_migrate 模块导入 D8 站点...如果这不能直接工作,我将创建一个空白 D7 站点,导入到该站点(希望可以工作),然后可能升级/迁移到D8 将更加成功。谢谢你的主意!我会告诉你进展如何。
-
欢迎来到 SO。如果任何答案解决了原始问题,请选择一个答案(绿色按钮)
-
@Salah-1 我正在努力了解备份和迁移将如何帮助 OP 从 Drupal 7 升级到 Drupal 8,但我全神贯注。
-
这里指的是内容迁移,不是配置。