为什么Magento 2.1.2 cron:run提供未定义的index:作业?


13

运行时:

/usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log

我得到:

[Exception]                                                                  
  Notice: Undefined index: jobs in /home/ubuntu/repo/project/vendor/magento/
               module-cron/Model/Config/Converter/Db.php on line 39  


中存在错误update.logsetup-cron.ERROR: Database 'my-db' does not exist or specified database server user does not have privileges to access this database.
Stevie G

所以,问题是在错误的水平,该数据迁移工具添加的cron项:所以没有delete from core_config_data where path like 'crontab/jobs%'; community.magento.com/t5/Technical-Issues/...
杰拉德

修正了第一个问题,但现在运行php /var/www/shootingstuff/update/cron.php提供了PHP Warning: require_once(/dir/update/vendor/autoload.php): failed to open stream: No such file or directory in /dir/update/app/bootstrap.php on line 15 PHP Fatal error: require_once(): Failed opening required '/dir/update/vendor/autoload.php' (include_path='.:/usr/share/php') in /dir/update/app/bootstrap.php on line 15
杰拉德

Answers:


35

在我的情况下,这是由从的Magento 1迁移了一些Cron作业引起的core_config_data。Magento 2希望格式为crontab/{groupname}/jobs/{code},而导入的格式会缺少组名(即默认)。如果是这种情况,则可能要删除中的错误条目core_config_data,或更新它们以映射新的cron作业。


3
您可能需要从core_config_data表中删除所有crontab条目,然后运行php bin/magento setup:upgrade
Ndianabasi

1
bin/magento ca:fl config对我来说足够了
Shapeshifter

你是对的!由于我正在使用的此站点之前已从M1迁移到M2.1,因此core_config_data中确实存在该消息,再次感谢!
MazeStricks

2
已删除202个条目:) 由于安全模式,DELETE FROM core_config_data WHERE path LIKE 'crontab/%' AND path NOT LIKE 'crontab/default%' AND config_id > 0我需要最后一部分AND config_id > 0
达莫达·巴希尔

1
感谢@DamodarBashyal共享查询。
chirag dodia

4

我有同样的错误。这是从Magento 1迁移到Magento 2时的错误。因此,我通过删除表“ core_config_data”中所有以“ crobtab”开头的“路径”行来解决此问题。

然后运行:php bin / magento setup:upgrade

和错误修复。Magento 2将再次生成所有cronjob。


谢谢它为我工作。
biplab溃败

3

正如rcason所说:此问题是由于从Magento 1迁移到Magento 2而引起的。从“ core _config_data”中删除所有以crontab / default ...开头的值(在Config Path下)后,问题已解决,并且M2 cron作业现在运行没有问题。


0

看起来您在数据库中的cron配置格式错误。尝试清理cron_schedule表,然后再次运行cron。

另外,请检查系统配置中的cron设置。


1
没有任何东西cron_schedule
Stevie G
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.