MySQLでスケジュールされたタスクを設定する方法の分析

MySQLでスケジュールされたタスクを設定する方法の分析

この記事では、例を使用して、MySQL でスケジュールされたタスクを設定する方法について説明します。ご参考までに、詳細は以下の通りです。

今日は毎日定期的に実行する必要があるタスクに遭遇しました。そのような機能はMySQLデータベースに用意されているので、整理して共有してみました。

1. まず、スケジュールされたタスクがオンになっているかどうかを確認します

イベントが有効になっているかどうかを確認します。

'%event_sche%' のような変数を表示します。

イベント プランを開くには:

グローバルイベントスケジューラを 1 に設定します。

イベントスケジュールを閉じるには:

グローバルイベントスケジューラを 0 に設定します。

イベントタスクを閉じる:

ALTER EVENT eventName ON COMPLETION PRESERVE DISABLE;

イベント タスクを開始するには:

ALTER EVENT eventName ON COMPLETION PRESERVE ENABLE;

イベントタスクを表示:

ショーイベント;

2. ストアドプロシージャを作成する

区切り文字 //
存在する場合はプロシージャを削除する p_test //
プロシージャ p_test() を作成する
始める
test(name, create_time) に値 ('testName', now()) を挿入します。
終わり//

3. このストアド プロシージャを呼び出すスケジュールされたタスクを設定します(2015 年 8 月 8 日の 1:00 から 10 秒ごとに実行されます)

存在する場合はイベントをドロップします e_test//
イベントの作成 e_test
スケジュールに従って 10 秒ごとに開始 タイムスタンプ '2015-08-08 01:00:00'
完了時に保存
する
始める
p_test() を呼び出します。
終わり//

注:イベント イベント: ON SCHEDULE スケジュールされたタスクでは、スケジュールされたタスクを設定する方法が 2 つあります。

1. AT タイムスタンプ。スケジュールされた単一のタスクを完了するために使用されます。

2. 毎回の時間(単位)数量時間単位[開始タイムスタンプ] [終了タイムスタンプ]。繰り返しスケジュールされたタスクを完了するために使用されます。

両方のスケジュールされたタスクでは、タイムスタンプは任意の TIMESTAMP および DATETIME データ型にすることができ、タイムスタンプは現在の時刻よりも大きい必要があります。

定期的にスケジュールされたタスクでは、時間 (単位) 数量は任意の NULL 以外の整数にすることができ、時間単位は YEAR、MONTH、DAY、HOUR、MINUTE、または SECOND のキーワードです。

ヒント: QUARTER、WEEK、YEAR_MONTH、DAY_HOUR、DAY_MINUTE、DAY_SECOND、HOUR_MINUTE、HOUR_SECOND、MINUTE_SECONDなどの他の時間単位も有効です。これらの非標準の時間単位を使用することはお勧めしません。

[完了時に保存しない]

ON COMPLETION パラメータは、「このイベントが再度発生しないとき」、つまり、単一のスケジュールされたタスクが完了したとき、または繰り返しスケジュールされたタスクが ENDS ステージに到達したときを意味します。 PRESERVE の機能は、実行後にイベントが削除されるのを防ぐことです。EVENT の特定の情報を表示するには、このパラメータを使用することをお勧めします。

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQL スケジュールタスク (EVENT イベント) を詳細に設定する方法
  • MySQL スケジュールタスクの実装と使用例
  • mysql スケジュールタスク (イベント イベント) の詳細な説明
  • Linux で MySQL スケジュール タスク バックアップ データを実装する方法
  • MySQL スケジュールタスク例チュートリアル
  • Linux で MySQL スケジュールタスクを実装する方法
  • MySQLのスケジュールタスクが正常に実行できない原因の分析と解決

<<:  Vueは時間カウントダウン機能を実装する

>>:  Linux でジャンクファイルをエレガントに削除する方法

推薦する

Nginx+Keepalived でデュアルマシン マスターとバックアップを実装する方法

序文まず、高性能サーバーの高可用性またはホットスタンバイソリューションである Keepalived ...

詳細なアイデアを備えたシンプルな計算機の HTML 実装

コードをコピーコードは次のとおりです。 <!DOCTYPE html> <html...

MySQL CHARとVARCHARの保存と読み取りの違い

導入保存時と読み取り時に CHAR 型と VARCHAR 型の違いを本当にご存知ですか?まずいくつか...

JavaScript における clientWidth、offsetWidth、scrollWidth の違い

1. コンセプトこれらはすべて Element の属性であり、要素の幅を示します。 Element....

シャドウソックスを使用してLAN透過ゲートウェイを構築する

目次dnsmasq をインストールして設定するChinaDNS をインストールして設定するshado...

docker ログ - docker コンテナ ログの実装を表示します

docker logs コマンドを使用してコンテナ ログを表示できます。コマンド形式: $ dock...

MySQL パフォーマンス チューニングについて知っておくべき 15 個の重要な変数 (要約)

序文: MYSQL は最も人気のある WEB バックエンド データベースです。最近、NOSQL がま...

MySQL で日付時刻データを取得し、その後に .0 を追加する方法

MySQL のデータ型は datetime です。データベースに保存されているデータは 2015-0...

Linux での Docker と portainer の設定方法

1.Docer CEをインストールして使用するこの記事では、CentOS 7 を例に Docker ...

Dockerカスタムブリッジdocker0とdockerのコマンド操作の開始、終了、再起動

質問会社がサーバーを移行した後、デフォルトで作成された docker0 ブリッジが会社の外部ネットワ...

html 内の絶対パス URL と相対パス URL、サブディレクトリ、親ディレクトリ、ルート ディレクトリ

絶対 URL は、インターネット上の特定のファイルに必要なすべてのコンテンツを表すために使用されます...

MySQLレジストリをクリアする方法

具体的な方法: 1. [ win+r ] を押して実行ウィンドウを開き、「regedit」と入力して...

Dockerコマンドの学習を1つの記事にまとめる

目次導入ミラーリポジトリログイン引く押す検索ローカル画像管理画像rmiタグ建てる歴史保存負荷輸入コン...

Vue はファジークエリを実装します - MySQL データベースデータ

目次1. 需要2. 実装3. 結果1. 需要入力ボックスにデータを入力し、入力結果に基づいてデータベ...

JavaScript で外部変数にアクセスするサブ関数の 3 つのソリューション

序文Web ページを作成するときに、次のような状況に遭遇することはよくあります。 <本文>...