繁体   English   中英

无法使用Cron作业连接到MySQL数据库

[英]Cannot connect to MySQL Database with Cron job

我正在尝试执行cron作业,以删除一年前停用其帐户的所有用户,该脚本在网站上有效,但是通过cron作业进行操作时,出现致命错误。

Fatal error: Cannot instantiate non-existent class: pdo in /homepages/9/d526231279/htdocs/cupidmemories/cronjobs/users.cron.php on line 2

这是我的users.cron.php文件:

<?php
$db = new PDO('mysql:host=dbhost.com:port; dbname=dbname;', 'user', 'pass');

$query = "DELETE FROM users WHERE account_deleted='4'";
$db->query($query);
?>

大多数Apache / PHP安装都有2个单独的php.ini文件。

我想说Apache / PHP使用的一个很好,但是另一个没有激活PDO扩展。

做一个

>php --ini 

从命令行开始,您将看到一行告诉您PHP CLI从何处获取其php.ini文件的行。 编辑它,以便

extension=php_pdo_mysql.so

被激活

致命错误: 旧的PHP / 4显示了无法实例化不存在的类错误消息。 PDO类要求PHP / 5.1.0或更高版本。 您根本无法使用这种过时的解释器来运行类似于现代代码的任何内容。

希望您的托管服务提供商可能会提供较新的解释器(如果您提供适当的完整路径),那么您可以替换此:

*/10 * * * * php /homepages/9/d526231279/htdocs/cupidmemories/cronjobs/users.cron.php

...例如:

*/10 * * * * /opt/php5.6/bin/php /homepages/9/d526231279/htdocs/cupidmemories/cronjobs/users.cron.php

(这些是伪造的路径,不要只是复制它们期望工作的路径。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM