MySQL で古いデータを削除するストアド プロシージャをスケジュールするにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-04 02:19:01
オリジナル
1029 人が閲覧しました

How to Schedule a Stored Procedure to Delete Stale Data in MySQL?

MySQL でのストアド プロシージャのスケジュール

MySQL では、ストアド プロシージャを特定の間隔で実行するようにスケジュールでき、タスクの自動化に便利です。たとえば、古いデータを定期的に削除するプロシージャを設定できます。

次のストアド プロシージャをスケジュールする方法を見てみましょう:

DROP PROCEDURE IF EXISTS `delete_rows_links` 
GO

CREATE PROCEDURE delete_rows_links
BEGIN 

    DELETE activation_link
    FROM activation_link_password_reset
    WHERE  TIMESTAMPDIFF(DAY, `time`, NOW()) < 1 ; 

END 

GO
ログイン後にコピー

プロシージャのスケジュール

Toプロシージャをスケジュールするには、CREATE EVENT ステートメントを使用します。プロシージャを 5 秒ごとに実行する例を次に示します。

CREATE EVENT myevent
    ON SCHEDULE EVERY 5 SECOND
    DO
      CALL delete_rows_links();
ログイン後にコピー

このイベントにより、プロシージャが 5 秒ごとに実行され、古いデータが効果的に削除されます。

追加情報

MySQL でのイベント スケジューリングの詳細については、次のリソースを参照してください:

  • [MySQL Event Scheduling](https://dev.mysql.com/doc/refman/8.0/en/create- event.html)
  • [タスクのスケジュール設定に MySQL イベントを使用する](https://www.digitalocean.com/community/tutorials/how-to-use-mysql-events-for-scheduling-tasks)

これらの手順に従うことで、MySQL でストアド プロシージャを簡単にスケジュールし、自動化されたタスクとデータ管理ルーチンをタイムリーに実行できるようになります。

以上がMySQL で古いデータを削除するストアド プロシージャをスケジュールするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート