【发布时间】:2016-03-18 18:45:04
【问题描述】:
我在运行 CiviCRM 4.6.1 的 Wordpress 4.3 站点上的 Site Ground 托管的站点上通过 cpanel 使用 Cron Jobs。目的是每 30 分钟运行一次作业(这是我们的 ISP 允许的最长时间)。我已经按照http://wiki.civicrm.org/confluence/display/CRMDOC/Managing+Scheduled+Jobs 的建议尝试了这些不同的调用(省略了站点、用户名和密码):
0,30 * * * * php public_html/wp-content/plugins/civicrm/civicrm/bin/cli.php -s *site* -u *username* -p *password* -e Job -a execute
*/30 * * * * php public_html/wp-content/plugins/civicrm/civicrm/bin/cli.php -s *site* -u *username* -p *password* -e Job -a execute
或作为两个电话:
30 * * * * php public_html/wp-content/plugins/civicrm/civicrm/bin/cli.php -s *site* -u *username* -p *password* -e Job -a execute
0 * * * * php public_html/wp-content/plugins/civicrm/civicrm/bin/cli.php -s *site* -u *username* -p *password* -e Job -a execute
出于某种原因,无论我如何编写 cron 作业,cron 总是在一小时内失败,但不是一半。在我的 cron 电子邮件回复中收到以下错误:
数据库错误:未选择数据库 在 callApi 期间死亡
但它每次都运行相同的代码,所以我不应该在每次 cron 运行时都得到这个吗?在半小时内,一切都按原样执行,预定的电子邮件会正确发送。有什么我想念的吗?此外,每次我从终端运行命令时,它都会正确执行并发送预定的电子邮件。只有每小时的 cron 工作给了我这个问题。感谢您的帮助。
【问题讨论】:
-
您是否有一个 CiviCRM 计划作业设置为每小时执行一次(每小时一次)并且可能会失败(检查登录 /civicrm/admin/job?reset=1 -> 查看作业日志)
-
当然,这完全有道理,我在其他一些工作中发现了错误。目前,我会将 cron 作业隔离到邮件中,如果需要,稍后再添加其他作业。谢谢!
标签: mysql wordpress cron civicrm