ホームページ >データベース >mysql チュートリアル >手動でパスワードを入力せずに MySQL クエリの実行を Cron ジョブとして自動化するにはどうすればよいですか?

手動でパスワードを入力せずに MySQL クエリの実行を Cron ジョブとして自動化するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-17 07:38:03297ブラウズ

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

Cron ジョブとしての自動 MySQL クエリ

質問:

MySQL クエリは可能ですか手動パスワードなしで cron ジョブとして実行されるエントリ?

背景:

目標は、cron ジョブを使用して、1 週間より古い MySQL データベース エントリを毎日削除することです。実行する PHP クエリは次のとおりです:

mysql_query("DELETE FROM tbl_message WHERE DATEDIFF( NOW( ) ,  timestamp ) >=7");

解決策:

オプション 1: MySQL Event Scheduler

をお勧めしますcron ジョブの代わりに MySQL のイベント スケジューラを使用します。有効にするには:

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。