我正试着跑:
drush updb
在我的Drupal 8网站上使用drush 9.3.0并且我收到错误:
The command could not be executed successfully (returned: PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in /home/myproject/www/staging.myproject.ch/core/lib/Drupal/Core/Routing/CompiledRoute.php on line 163
试图像以下一样进行匆忙
php -d memory_limit = 1024M vendor / bin / drush ev“echo ini_get('memory_limit')”
我得到了1024M的值,但当我运行updb时,我仍然得到了prevouse内存消息。
在这里:https://github.com/drush-ops/drush/issues/3294
..我看到drush 9正在子进程中运行一些任务,而且很可能就是updb命令的情况,所以即使drush也会以增加的内存限制子任务获得默认值为止。
如何在不更改php.ini文件的情况下增加drush 9的内存限制?
答案是:
echo "memory_limit = 512M" > drush.ini
PHPRC=./drush.ini php vendor/bin/drush updb
rm drush.ini
我想这个drush.ini可以是“普通”静态文件,但由于所有这些都是必需的,因为服务器设置不匹配(缺少内存的PHP)也许它不应该是项目的一部分......