MySQL イベントスケジューラー

MySQLのイベントスケジューラーはバッチ処理やセッション管理に利用可能。

イベントスケジューラーが有効かを確認

mysql> show variables like '%event%';
+----------------------------------------------------------+-------+
| Variable_name                                            | Value |
+----------------------------------------------------------+-------+
| binlog_rows_query_log_events                             | OFF   |
| event_scheduler                                          | OFF   |
| log_bin_use_v1_row_events                                | OFF   |
| performance_schema_events_stages_history_long_size       | 10000 |
| performance_schema_events_stages_history_size            | 10    |
| performance_schema_events_statements_history_long_size   | 10000 |
| performance_schema_events_statements_history_size        | 10    |
| performance_schema_events_transactions_history_long_size | 10000 |
| performance_schema_events_transactions_history_size      | 10    |
| performance_schema_events_waits_history_long_size        | 10000 |
| performance_schema_events_waits_history_size             | 10    |
+----------------------------------------------------------+-------+
11 rows in set (0.00 sec)

my.cnfのmysqldセクションに以下を記述して再起動

イベント用のクエリを作成し、実行

CREATE EVENT イベント名
	ON SCHEDULE
		EVERY 5 MINUTE STARTS '2015-06-30 15:00:44'
	ON COMPLETION PRESERVE
	ENABLE
	COMMENT 'コメント'
	DO BEGIN

	イベントで行う処理

END