在phpMyAdmin(mySQL)中发生了非常奇怪的事情......
情况:
我有一个只有一个字段的表,其中包含一个名为'count'的INT值。 count最初设置为0.一个cron作业每小时调用一个php脚本,将'count'递增一(SET count = count + 1)
。
问题:
当我在phpMyAdmin中打开表格,然后立即刷新浏览器时,可以看到问题:我可以看到'count'在一秒钟内增加了20次。单独离开一分钟,然后再次刷新浏览器,表明它已经增加了数百次!在某处调用我的cron作业并递增'count'是一些无限循环吗? (不要这么认为,因为我更新了crob php脚本,当它被调用时给我发电子邮件,我没有接到电话......)
有没有这样的事发生在任何人身上?
CRON字符串:
*/15 * * * * /usr/bin/php -q /home/account_name/cron/cron.php test
php脚本:
<?php
class TestCommand extends CConsoleCommand {
private $connection;
public function run($args) {
// Increment counter
$this->connection=Yii::app()->db;
$sql="UPDATE count_converts SET count=count+1 WHERE id=1";
$command=$this->connection->createCommand($sql);
$command->execute();
}
}
?>
更新
神秘解决:发现这是由于其他地方的嵌套for循环错误(两个循环都使用$ i)...
答案 0 :(得分:0)
为什么在那里找到&lt; br /&gt;你的cron字符串中的换行符?将其更改为
* / 15 * * * * / usr / bin / php -q /home/account_name/cron/cron.php test