首页 > 数据库 > mysql教程 > 如何将 MySQL 查询自动执行为 Cron 作业,而无需手动输入密码?

如何将 MySQL 查询自动执行为 Cron 作业,而无需手动输入密码?

Susan Sarandon
发布: 2024-11-17 07:38:03
原创
276 人浏览过

How to Automate MySQL Query Execution as a Cron Job Without Manual Password Entry?

作为 Cron 作业的自动化 MySQL 查询

问题:

MySQL 查询可以作为 cron 作业执行,无需手动输入密码?

背景:

目标是每天使用 cron 作业清除一周以上的 MySQL 数据库条目。要执行的 PHP 查询是:

mysql_query("DELETE FROM tbl_message WHERE DATEDIFF( NOW( ) ,  timestamp ) >=7");
登录后复制

解决方案:

选项 1:MySQL 事件调度程序

推荐使用 MySQL 的事件调度程序而不是 cron 作业。要启用它:

SET GLOBAL event_scheduler = ON;
登录后复制

创建事件:

CREATE EVENT name_of_event
ON SCHEDULE EVERY 1 DAY
STARTS '2014-01-18 00:00:00'
DO
DELETE FROM tbl_message WHERE DATEDIFF( NOW( ) ,  timestamp ) >=7;
登录后复制

选项 2:运行 PHP 文件

运行 PHP 文件作为 cron 作业,首先将查询保存为 PHP 文件:

登录后复制

然后,修改 crontab 文件:

crontab -e
登录后复制

添加以下行:

* * * * * /usr/bin/php /path/to/php_file.php
登录后复制

以上是如何将 MySQL 查询自动执行为 Cron 作业,而无需手动输入密码?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板