【发布时间】:2018-10-05 11:31:32
【问题描述】:
我正在将网站从 8.3.5 升级到 8.5.1
我更新了代码库,通过 composer 配置了模块,并使用 cgr 升级了我的 drush 安装,并在安装中运行 drush 9。我让这个网站在我本地环境中的开发数据库上运行得很好
我正在将数据库从生产服务器移植到开发环境中。在本地开发环境中使用 Acquia DevDesktop 2。 我可以运行 drush status 并且一切似乎都很好:
数据库主机名:127.0.0.1
数据库端口:33067
数据库用户名:drupaluser
数据库名称:site_migration_851
数据库:已连接
Drupal 引导程序:成功
默认主题:site_theme
管理主题:七
PHP 二进制文件:/Applications/DevDesktop/php5_6/bin/php
PHP 配置:/Applications/DevDesktop/php5_6/bin/php.ini
PHP 操作系统:达尔文
Drush 脚本:/Volumes/Video_Drive/web/DrupalProjects/site-mig ration-851/vendor/drush/drush/drush Drush 版本:9.2.3
冲程温度:/tmp
Drush 配置:/Volumes/Video_Drive/web/DrupalProjects/site-mig ration-851/vendor/drush/drush/drush.yml 安装配置文件:标准
Drupal 根目录:/Volumes/Video_Drive/web/DrupalProjects/site-mig ration-851 站点路径:站点/默认
文件,公共:站点/默认/文件
文件,临时:/tmp
我无法在浏览器中加载网站,我收到以下错误:
网站遇到意外错误。请再试一次 后来.Symfony\Component\HttpKernel\Exception\NotFoundHttpException: 在 Symfony\Component\HttpKernel\EventListener\RouterListener->onKernelRequest() 中找不到“GET /”的路由 (vendor/symfony/http-kernel/EventListener/RouterListener.php 的第 144 行)。
Drupal\Core\Routing\AccessAwareRouter->matchRequest(Object) (线:114) Symfony\Component\HttpKernel\EventListener\RouterListener->onKernelRequest(Object, 'kernel.request',对象) call_user_func(数组,对象, 'kernel.request',对象)(行:111) Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.request', 对象)(行:127) Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (第 68 行) Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (行: 57) Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1)(行: 47) Drupal\Core\StackMiddleware\KernelPreHandle->句柄(对象,1, 1) (行: 47) Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (行: 50) Drupal\Core\StackMiddleware\NegotiationMiddleware->句柄(对象, 1, 1) (Line: 23) Stack\StackedHttpKernel->handle(Object, 1, 1) (行:664)Drupal\Core\DrupalKernel->handle(Object)(行:19)
当我运行 drush cr 时,我收到以下错误: [错误] 由于不可恢复的错误,Drush 命令异常终止。 错误:调用 /Volumes/web/DrupalProjects/site-migration-851/core/includes/common.inc 中未定义的函数 system_rebuild_module_data(),第 1123 行
我尝试使用令牌运行 /core/rebuild.php,生成良好,但报错并显示与上述相同的消息。
在阅读了其他人在这里和 drupal 社区网站上的经历后,我手动截断了数据库中的“cache_”表。
我还检查了配置管理器设置,uuid 与旧的开发数据库相同。我重置了它,尝试对 prod db 运行同步更改,但没有任何改变。
仍然无法使用 prod DB 加载站点。目标是让代码库与生产数据库一起运行,因为它具有正确的内容等。
生产数据库中是否存在干扰核心旋转正确路由的内容?
更新:
我重新运行了 composer update 和 composer install 能够成功进入 /core/install.php 页面。 它告诉我安装了drupal。 重新开始的第一个选项是不可取的,因为我需要保留内容数据。
当我转到 /update.php 网址时
网站遇到意外错误。请稍后再试。 Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: 您请求了一个不存在的服务“access_check.db_update”。在 Symfony\Component\DependencyInjection\ContainerBuilder->getDefinition() (第 1024 行 供应商/symfony/dependency-injection/ContainerBuilder.php)。 Symfony\Component\DependencyInjection\ContainerBuilder->getDefinition('access_check.db_update') (行:591) Symfony\Component\DependencyInjection\ContainerBuilder->doGet('access_check.db_update', 1) (行: 569) Symfony\Component\DependencyInjection\ContainerBuilder->get('access_check.db_update') (行:182)Drupal\Core\Update\UpdateKernel->handleAccess(Object, 对象)(第 99 行)Drupal\Core\Update\UpdateKernel->handleRaw(Object) (Line: 73) Drupal\Core\Update\UpdateKernel->handle(Object) (Line: 28)
当我转到网站首页时,它会返回:
网站遇到意外错误。请再试一次 后来.Drupal\Component\Plugin\Exception\PluginNotFoundException: “节点”实体类型不存在。在 Drupal\Core\Entity\EntityTypeManager->getDefinition() (core/lib/Drupal/Core/Entity/EntityTypeManager.php 的第 133 行)。
Drupal\Core\Entity\EntityTypeManager->getHandler('node', 'storage')(第 169 行) Drupal\Core\Entity\EntityTypeManager->getStorage('node') (线:79) Drupal\Core\Entity\EntityManager->getStorage('node') (行:100) Drupal\Core\ParamConverter\EntityConverter->convert('43', 数组,“节点”,数组)(行:100) Drupal\Core\ParamConverter\ParamConverterManager->convert(Array) (行:45) Drupal\Core\Routing\Enhancer\ParamConversionEnhancer->enhance(Array, 对象)(行:259) Drupal\Core\Routing\Router->applyRouteEnhancers(Array, Object) (行:130) Drupal\Core\Routing\Router->matchRequest(Object) (行: 90) Drupal\Core\Routing\AccessAwareRouter->matchRequest(对象) (线:114) Symfony\Component\HttpKernel\EventListener\RouterListener->onKernelRequest(Object, 'kernel.request',对象) call_user_func(数组,对象, 'kernel.request',对象)(行:111) Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.request', 对象)(行:127) Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (第 68 行) Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (行: 57) Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1)(行: 47) Drupal\Core\StackMiddleware\KernelPreHandle->句柄(对象,1, 1) (行: 47) Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (行: 50) Drupal\Core\StackMiddleware\NegotiationMiddleware->句柄(对象, 1, 1) (Line: 23) Stack\StackedHttpKernel->handle(Object, 1, 1) (行:664)Drupal\Core\DrupalKernel->handle(Object)(行:19)
运行 drush dbup & entup 返回以下错误:
致命错误:调用未定义的函数 system_rebuild_module_data() 在 /web/DrupalProjects/site/site/core/includes/update.inc 第 46 行
另外 drush entup 会产生以下状态,然后报错
[成功] 不需要实体架构更新 致命错误:调用未定义的函数 system_rebuild_module_data() 在 /web/DrupalProjects/site/site/core/includes/common.inc 在线 1123 [成功] 完成执行更新。
很奇怪。
【问题讨论】:
标签: php mysql drupal drupal-8 drush