我正在将网站从8.3.5升级到8.5.1
我更新了代码库,我通过编辑器配置了模块,并使用cgr升级了我的drush安装,并在安装中运行了drush 9。我在本地环境中的dev数据库上运行这个站点
我正在努力将数据库从生产服务器移植到开发环境中。将Acquia DevDesktop 2用于本地开发环境。 我可以运行drush状态,一切似乎都很好:
数据库主机名:127.0.0.1
DB端口:33067
DB用户名:drupaluser
数据库名称:site_migration_851
数据库:已连接
Drupal bootstrap:成功的
默认主题: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 定量-851 /供应商/ drush / drush / drush Drush版本:9.2.3
扼流温度:/ tmp
Drush configs:/ Volumes / Video_Drive / web / DrupalProjects / site-mig ration-851 / vendor / drush / drush / drush.yml安装档案:标准
Drupal root:/ Volumes / Video_Drive / web / DrupalProjects / site-mig ration-851站点路径:sites / default
文件,公共:网站/默认/文件
文件,温度:/ tmp
我无法在浏览器中加载网站,我收到以下错误:
该网站遇到意外错误。请再试一次 later.Symfony \分量\ HttpKernel \异常\ NotFoundHttpException: 找不到" GET /"在Symfony \ Component \ HttpKernel \ EventListener \ RouterListener-> onKernelRequest()中 (vendor / symfony / http-kernel / EventListener / RouterListener.php的第144行)。
的Drupal \核心\路由\ AccessAwareRouter-> matchRequest(对象) (行:114) 的Symfony \组件\ HttpKernel \事件监听\ RouterListener-> onKernelRequest(对象, ' kernel.request',Object)call_user_func(Array,Object, ' kernel.request',Object)(行:111) 的Drupal \组件\此事件\ ContainerAwareEventDispatcher->调度(' kernel.request&#39 ;, 对象)(行: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-> handle(Object,1, 1)(线路:47) 的Drupal \核心\ StackMiddleware \ ReverseProxyMiddleware->手柄(对象, 1,1)(线路:50) 的Drupal \核心\ StackMiddleware \ NegotiationMiddleware->手柄(对象, 1,1)(行: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,line 1123中调用未定义的函数system_rebuild_module_data()
我尝试使用令牌运行/core/rebuild.php,该令牌生成正常,但它出错并使用与上面相同的消息。
我手动截断了"缓存_"在阅读了其他人在这里以及drupal社区网站上所经历的内容后,数据库中的表格。
我还检查了配置管理器设置,并且uuid与旧的dev数据库相同。我重置它,尝试对prod db运行同步更改并且没有任何改变。
仍然无法使用prod DB加载网站。目标是使代码库与生产数据库一起运行,因为它具有正确的内容等。
生产数据库中是否存在干扰核心旋转正确路线的内容?
更新:
我重新运行了作曲家更新和作曲家安装 能够成功进入/core/install.php页面。 它告诉我drupal已安装。 第一种选择是不可取的,因为我需要保留内容数据。
当我转到/update.php网址
时该网站遇到意外错误。请稍后再试。 Symfony的\分量\ DependencyInjection \异常\ ServiceNotFoundException的: 您已请求不存在的服务" access_check.db_update"。在 的Symfony \组件\ DependencyInjection \ ContainerBuilder-> getDefinition方法() (第1024行) 供应商/ symfony的/依赖性注入/ ContainerBuilder.php)。 的Symfony \组件\ DependencyInjection \ ContainerBuilder-> getDefinition方法(' access_check.db_update') (行:591) 的Symfony \组件\ DependencyInjection \ ContainerBuilder->的doGet(' access_check.db_update&#39 ;, 1)(行:569) 的Symfony \组件\ DependencyInjection \ ContainerBuilder->获得(' access_check.db_update') (行:182)Drupal \ Core \ Update \ UpdateKernel-> handleAccess(Object, 对象)(行:99)Drupal \ Core \ Update \ UpdateKernel-> handleRaw(Object) (行:73)Drupal \ Core \ Update \ UpdateKernel-> handle(Object)(行:28)
当我转到网站的首页时,它会返回:
该网站遇到意外错误。请再试一次 later.Drupal \分量\插件\异常\ PluginNotFoundException: "节点"实体类型不存在。在Drupal \ Core \ Entity \ EntityTypeManager-> getDefinition()中 (core / lib / Drupal / Core / Entity / EntityTypeManager.php的第133行)。
Drupal \ Core \ Entity \ EntityTypeManager-> getHandler(' node',' storage')(行:169) 的Drupal \核心\实体\ EntityTypeManager-> getStorage('节点') (行:79) 的Drupal \核心\实体\ EntityManager-> getStorage('节点') (行:100) 的Drupal \核心\ ParamConverter \ EntityConverter->转换(' 43&#39 ;, 数组,'节点',数组)(行:100) 的Drupal \核心\ ParamConverter \ ParamConverterManager->转换(阵列) (行:45) 的Drupal \核心\路由\强化剂\ ParamConversionEnhancer->增强(阵列, 对象)(行:259) Drupal \ Core \ Routing \ Router-> applyRouteEnhancers(Array,Object) (行:130)Drupal \ Core \ Routing \ Router-> matchRequest(Object)(行: 90)Drupal \ Core \ Routing \ AccessAwareRouter-> matchRequest(Object) (行:114) 的Symfony \组件\ HttpKernel \事件监听\ RouterListener-> onKernelRequest(对象, ' kernel.request',Object)call_user_func(Array,Object, ' kernel.request',Object)(行:111) 的Drupal \组件\此事件\ ContainerAwareEventDispatcher->调度(' kernel.request&#39 ;, 对象)(行: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-> handle(Object,1, 1)(线路:47) 的Drupal \核心\ StackMiddleware \ ReverseProxyMiddleware->手柄(对象, 1,1)(线路:50) 的Drupal \核心\ StackMiddleware \ NegotiationMiddleware->手柄(对象, 1,1)(行:23)Stack \ StackedHttpKernel-> handle(Object,1,1) (行:664)Drupal \ Core \ DrupalKernel-> handle(Object)(行:19)
运行drush dbup& entup返回以下错误:
致命错误:调用未定义的函数system_rebuild_module_data() 在第46行的/web/DrupalProjects/site/site/core/includes/update.inc
另外drush entup产生以下状态,然后错误
[success]无需实体架构更新 致命错误:调用未定义的函数system_rebuild_module_data() 在 /web/DrupalProjects/site/site/core/includes/common.inc 在1123线 [成功]完成了更新。
很奇怪。
答案 0 :(得分:0)
运行这些命令以获得对Upgraded Drupal的依赖。
composer update
composer install
答案 1 :(得分:0)
请按照以下步骤操作
<datalist id="categories">
<option *ngFor="let one of categoryList" value="{{one.categoryName}}">
</option>
</datalist>
composer update
drush updb
答案 2 :(得分:0)
很抱歉,我挖了一个5个月的问题,将Drupal 8.5网站更新到8.6时遇到了同样的错误。我不会丢失数据库中的任何数据,因此使用新数据库对我来说是行不通的;在运行/update.php
的过程中,出现了上述错误。我最终通过删除整个/vendor
目录并重新运行来使我的工作正常:
composer install
composer update
drush cr
答案 3 :(得分:0)
从根目录删除供应商目录之后。请仅运行composer update命令。 它将做什么,它将仅安装基于新Drupal版本的所有依赖项。
如果要升级整个过程,请告诉我。
谢谢!
答案 4 :(得分:0)
请遵循以下过程。您需要在腻子中使用它。
1)在主Drupal站点文件夹之外的某个位置安装新的Drupal。
wget https://ftp.drupal.org/files/projects/drupal-8.5.1.tar.gz
2)解压缩该文件
tar -xvf drupal-8.5.1.tar.gz
3)转到新安装的drupal根目录并删除模块,主题,站点文件夹。例如。
rm -rf modules
rm -rf sites
rm -rf themes
4)现在回到根目录并点击下面的代码。
yes|cp -R drupal-8.5.1/* your_original_drupal_folder_name/
5)之后,只需转到您的drupal根目录并运行composer update
命令。
6)最后运行drush updb
。
答案 5 :(得分:0)
按照以下步骤将Drupal从8.3.5升级到8.5.1
然后两种方式运行Drupal Update 1.通过URL domain / update.php或 2.刷新更新b
注意:如果在根位置建立了composer.lock,则将其删除。
答案 6 :(得分:0)
除非默认设置正确,否则不能直接使用CREATE DATABASE
。
尝试再次使用CREATE DATABASE drupal CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
创建它,然后运行导入。