首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从8升级到Drupal 9: Drush从settings.php覆盖数据库命名空间值

从8升级到Drupal 9: Drush从settings.php覆盖数据库命名空间值
EN

Stack Overflow用户
提问于 2022-07-17 21:57:29
回答 2查看 153关注 0票数 0

我正处于使用composer和drush从drupal 8到9的更新的最后阶段。我正处于运行数据库更新的阶段。然而:

代码语言:javascript
复制
vendor/bin/drush updatedb:status

失败与

代码语言:javascript
复制
Error: Class 'Drupal\mysql\Driver\Database\mysql\Connection' not found

(下面是完整的堆栈)

但是在我的settings.php中,我的数据库命名空间设置为'Drupal\Core\ database \Driver\mysql‘。在某个地方,额外的'mysql‘被插入到这个命名空间字符串中。编辑:如果我注释掉settings.php中的命名空间规范,仍然会导致相同的错误。

如果我损坏了我的settings.php,列出'Drupdddddal\Core\Database\Driver\mysql‘之类的东西,我就会得到

代码语言:javascript
复制
Class 'Drupdddddal\Core\Database\Driver\mysql\Connection' not found

这证明drush正在解析settings.php。为什么它会干扰我所提供的命名空间字符串,更重要的是,我如何解决这个问题?

在下面堆叠;一些字符串掩盖了隐私。

代码语言:javascript
复制
Error: Class 'Drupal\mysql\Driver\Database\mysql\Connection' not found in /home/XXXXXX/YYYYYYY/vendor/drupal/core/lib/Drupal/Core/Database/Database.php on line 413 #0 /home/XXXXXX/YYYYYYY/vendor/drupal/core/lib/Drupal/Core/Database/Database.\
php(189): Drupal\Core\Database\Database::openConnection('default', 'default')
#1 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Boot/DrupalBoot8.php(194): Drupal\Core\Database\Database::getConnection()
#2 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Boot/BootstrapManager.php(352): Drush\Boot\DrupalBoot8->bootstrapDrupalDatabaseValidate(Object(Drush\Boot\BootstrapManager))
#3 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Boot/BootstrapManager.php(429): Drush\Boot\BootstrapManager->bootstrapValidate(4)
#4 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Boot/BootstrapManager.php(384): Drush\Boot\BootstrapManager->bootstrapToPhaseIndex(5, Object(Consolidation\AnnotatedCommand\AnnotationData))
#5 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Boot/BootstrapHook.php(32): Drush\Boot\BootstrapManager->bootstrapToPhase('full', Object(Consolidation\AnnotatedCommand\AnnotationData))
#6 /home/XXXXXX/YYYYYYY/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php(44): Drush\Boot\BootstrapHook->initialize(Object(Symfony\Component\Console\Input\ArgvInput), Object(Consolidation\AnnotatedCommand\AnnotationData)\
)
#7 /home/XXXXXX/YYYYYYY/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php(36): Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->doInitializeHook(Object(Drush\Boot\BootstrapHook), Object(Symfony\\
Component\Console\Input\ArgvInput), Object(Consolidation\AnnotatedCommand\AnnotationData))
#8 /home/XXXXXX/YYYYYYY/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php(29): Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->callInitializeHook(Object(Drush\Boot\BootstrapHook), Object(Symfon\
y\Component\Console\Input\ArgvInput), Object(Consolidation\AnnotatedCommand\AnnotationData))
#9 /home/XXXXXX/YYYYYYY/vendor/consolidation/annotated-command/src/CommandProcessor.php(145): Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->initialize(Object(Symfony\Component\Console\Input\ArgvInput), Object(Consolidation\Annotate\
dCommand\AnnotationData))
#10 /home/XXXXXX/YYYYYYY/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(335): Consolidation\AnnotatedCommand\CommandProcessor->initializeHook(Object(Symfony\Component\Console\Input\ArgvInput), Array, Object(Consolidation\AnnotatedCommand\Annot\
ationData))
#11 /home/XXXXXX/YYYYYYY/vendor/symfony/console/Command/Command.php(221): Consolidation\AnnotatedCommand\AnnotatedCommand->initialize(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 /home/XXXXXX/YYYYYYY/vendor/symfony/console/Application.php(1027): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /home/XXXXXX/YYYYYYY/vendor/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand(Object(Consolidation\AnnotatedCommand\AnnotatedCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Conso\
le\Output\ConsoleOutput))
#14 /home/XXXXXX/YYYYYYY/vendor/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Runtime/Runtime.php(124): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#16 /home/XXXXXX/YYYYYYY/vendor/drush/drush/src/Runtime/Runtime.php(51): Drush\Runtime\Runtime->doRun(Array, Object(Symfony\Component\Console\Output\ConsoleOutput))
#17 /home/XXXXXX/YYYYYYY/vendor/drush/drush/drush.php(72): Drush\Runtime\Runtime->run(Array)
#18 /home/XXXXXX/YYYYYYY/vendor/drush/drush/drush(3): require('/home/XXXXXX/...')
#19 /home/XXXXXX/YYYYYYY/vendor/bin/drush(115): include('/home/XXXXXX/...')
#20 {main}
EN

回答 2

Stack Overflow用户

发布于 2022-07-22 17:14:29

我找不到原因,我只能想象一定会出现一些相互冲突的文件。通过将配置文件和站点特定的文件复制到drupal9的新安装中,我能够手动进行升级,drush updatedb也如愿以偿。

票数 0
EN

Stack Overflow用户

发布于 2022-08-24 20:29:05

9.4.5修复了一个听起来与我报告的https://www.drupal.org/project/drupal/releases/9.4.5有关的可疑问题

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73015627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档