この記事では、例を使用して、MySQL イベントの変更 (ALTER EVENT)、イベントの無効化 (DISABLE)、イベントの有効化 (ENABLE)、イベントの名前変更、およびデータベース イベントの移行の操作について説明します。ご参考までに、詳細は以下の通りです。 MySQL では既存のイベントのさまざまなプロパティを変更できることを知っておく必要があります。既存のイベントを変更する場合は、次のように ALTER EVENT ステートメントを使用できます。 ALTER EVENT イベント名 スケジュール通りのスケジュール 完了時に保存しない 新しいイベント名に名前を変更 有効 | 無効 する イベント本体 ALTER EVENT ステートメントは、既存のイベントに対してのみ機能します。存在しないイベントを変更しようとすると、MySQL はエラー メッセージを発行します。そのため、イベントを変更する前に、まず SHOW EVENTS ステートメントを使用してイベントの存在を確認する必要があります。 mysql> testdb からのイベントを表示します。 +--------+---------------+----------------+------------+----------+----------+----------------------+----------------+--------+-----------+----------------------+---------------------+ | Db | 名前 | 定義者 | タイム ゾーン | タイプ | 実行時刻 | 間隔値 | 間隔フィールド | 開始 | 終了 | ステータス | 発信元 | character_set_client | collation_connection | データベース照合 | +--------+---------------+----------------+------------+----------+----------+----------------------+----------------+--------+-----------+----------------------+---------------------+ | testdb | test_event_02 | root@localhost | SYSTEM | ONE TIME | 2017-08-03 04:24:48 | NULL | NULL | NULL | NULL | 無効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | +--------+---------------+----------------+------------+----------+----------+----------------------+----------------+--------+----------+----------------------+----------------------+----------------------+ セット内の1行 ALTER EVENT ステートメントのさまざまな機能の使用方法を示すために、1 分ごとにメッセージ テーブルに新しいレコードを挿入するサンプル イベントを作成します。 testdbを使用します。 イベントの作成 test_event_04 スケジュールどおり1分ごとに する メッセージに INSERT INTO (メッセージ、created_at) VALUES('ALTER EVENT ステートメントをテストします',NOW()); イベントを 2 分ごとに実行するように変更してみましょう。 イベントの変更 test_event_04 スケジュールどおりに 2 分ごとに実行します。 新しいロジックを指定してイベント本体を変更することもできます。 イベントの変更 test_event_04 する メッセージに INSERT INTO (メッセージ、created_at) VALUES('イベントからのメッセージ',NOW()); -- テーブル内のデータをクリアし、メッセージを切り捨てます。 変更が完了したら、2 分待ってからメッセージ テーブルを再度表示します。 mysql> SELECT * FROM メッセージ; +----+--------------------+---------------------+ | ID | メッセージ | 作成日時 | +----+--------------------+---------------------+ | 1 | イベントからのメッセージ | 2017-08-03 04:46:47 | | 2 | イベントからのメッセージ | 2017-08-03 04:48:47 | +----+--------------------+---------------------+ 2行セット ALTER EVENT ステートメントの後に DISABLE キーワードを使用すると、イベントを無効にすることができます。 イベントの変更 test_event_04 無効にする; SHOW EVENTS ステートメントを使用してイベントのステータスを表示することもできます。 mysql> testdb からのイベントを表示します。 +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ | Db | 名前 | 定義者 | タイム ゾーン | タイプ | 実行時刻 | 間隔値 | 間隔フィールド | 開始 | 終了 | ステータス | 発信元 | character_set_client | collation_connection | データベース照合 | +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ | testdb | test_event_02 | root@localhost | SYSTEM | ONE TIME | 2017-08-03 04:24:48 | NULL | NULL | NULL | NULL | 無効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | | testdb | test_event_04 | root@localhost | SYSTEM | 定期的 | NULL | 2 | 分 | 2017-08-03 04:44:47 | NULL | 無効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ 2行セット ALTER EVENT ステートメントの後に ENABLE キーワードを使用してイベントを有効にすることができます。 イベントの変更 test_event_04 有効にする; イベントのステータスを確認します: mysql> testdb からのイベントを表示します。 +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ | Db | 名前 | 定義者 | タイム ゾーン | タイプ | 実行時刻 | 間隔値 | 間隔フィールド | 開始 | 終了 | ステータス | 発信元 | character_set_client | collation_connection | データベース照合 | +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ | testdb | test_event_02 | root@localhost | SYSTEM | ONE TIME | 2017-08-03 04:24:48 | NULL | NULL | NULL | NULL | 無効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | | testdb | test_event_04 | root@localhost | SYSTEM | 定期的 | NULL | 2 | 分 | 2017-08-03 04:44:47 | NULL | 有効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ 2行セット ALTER EVENT を使用して既存のイベントの名前を変更してみましょう。 イベントの変更 test_event_04 名前を test_event_05 に変更します。 イベントのステータスを表示するには: mysql> testdb からのイベントを表示します。 +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ | Db | 名前 | 定義者 | タイム ゾーン | タイプ | 実行時刻 | 間隔値 | 間隔フィールド | 開始 | 終了 | ステータス | 発信元 | character_set_client | collation_connection | データベース照合 | +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ | testdb | test_event_02 | root@localhost | SYSTEM | ONE TIME | 2017-08-03 04:24:48 | NULL | NULL | NULL | NULL | 無効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | | testdb | test_event_05 | root@localhost | SYSTEM | 定期的 | NULL | 2 | 分 | 2017-08-03 04:44:47 | NULL | 有効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | +--------+---------------+----------------+------------+-----------+----------------------+--------------------------------+------+----------+----------+----------------------+----------------------+ 2行セット 次に、RENAME TO 句を使用して、イベントをあるデータベースから別のデータベースに移動できます。 イベント testdb.test_event_05 の変更 名前を newdb.test_event_05 に変更します。 イベントのステータスを確認しましょう: mysql> newdb からのイベントを表示します。 +-------+---------------+----------------+------------+------------+------------+----------------+-------+-----------+-----------+----------------------+---------------------+ | Db | 名前 | 定義者 | タイム ゾーン | タイプ | 実行時刻 | 間隔値 | 間隔フィールド | 開始 | 終了 | ステータス | 発信元 | character_set_client | collation_connection | データベース照合 | +-------+---------------+----------------+------------+------------+------------+----------------+-------+-----------+-----------+----------------------+---------------------+ | newdb | test_event_05 | root@localhost | SYSTEM | 定期的 | NULL | 2 | 分 | 2017-08-03 04:44:47 | NULL | 有効 | 0 | utf8 | utf8_general_ci | utf8_general_ci | +-------+---------------+----------------+------------+------------+------------+----------------+-------+-----------+-----------+----------------------+---------------------+ セット内の1行 さて、この記録についてはこれですべてです。 MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL インデックス操作スキルの概要」、「MySQL 共通関数の概要」、「MySQL ログ操作スキルの概要」、「MySQL トランザクション操作スキルの概要」、「MySQL ストアド プロシージャ スキルの概要」、および「MySQL データベース ロック関連スキルの概要」。 この記事が皆様のMySQLデータベース設計に役立つことを願っています。 以下もご興味があるかもしれません:
|
通常、IE ブラウザでの CSS の互換性の問題を解決するために、フロート レイアウトが使用されます...
目次主キー制約ユニーク制約主キー制約PRIMARY KRY 主キーは一意です。テーブルには主キーを ...
操作前に必ずお読みください:注意:管理に rancher を使用する場合は、k8s クラスターが構築...
1: dockerにmongodbをインストールするステップ1: dockerにmongodbをイン...
HTML はタグと属性で構成されており、これらを組み合わせてブラウザにページの表示方法を指示します。...
Mavenパッケージを解凍する tar xf apache-maven-3.5.4-bin.tar....
1. はじめにこの記事では、Docker を使用して Redis を探索する方法を説明します。 Do...
SQLのlike文では、例えば SELECT * FROM user WHERE username...
目次背景解決新しい質問高度な背景シャトル ボックスが大量のデータを処理すると、レンダリングされる D...
Linux は一般的にサーバーとして使用され、サーバーは一般的にコンピュータルーム内に置かれます。L...
この記事では、1枚以上の写真をアップロードするためのVant Uploaderコンポーネントを紹介し...
1. pom.xmlに次の依存関係を追加します。 <依存関係> <groupId&...
このチュートリアルの動作環境: Windows 7 システム、vue 2.9.6 バージョン、DEL...
CSS を使用して要素の円弧の動きを制御する方法CSS3 の新しい属性 transfrom トランジ...
目次1. 準備1. 環境を整える2. インストール方法3. ネットワークカードの構成2. インストー...