Simak berikut ini.
Keluarkan select CURRENT_TIMESTAMP;
atau
select count(*) as theCount
from customer_group
where is_status=1 and CURRENT_TIMESTAMP >= end_date;
Dengan kata lain, lakukan pengintaian. Acara berhasil atau gagal secara diam-diam karena tidak memiliki antarmuka pengguna.
Jalankan beberapa perintah seperti:
show variables where variable_name='event_scheduler';
-- saat ini OFF (atau bisa juga ON)
Tentukan waktu mulai acara Anda selama pembuatan, dan tentukan ON COMPLETION PRESERVE
seperti
drop event if exists `Every_5_Minutes_QuestionUpdateImport`;
DELIMITER $$
CREATE EVENT `Every_5_Minutes_QuestionUpdateImport`
ON SCHEDULE EVERY 5 MINUTE STARTS '2015-09-01 00:00:00'
ON COMPLETION PRESERVE
DO BEGIN
--
-- all your statements go here
--
END$$
DELIMITER ;
Aktifkan pengendali acara:
SET GLOBAL event_scheduler = ON; -- turn her on and confirm below
Konfirmasikan:
show variables where variable_name='event_scheduler';
Periksa status semua peristiwa dalam database tertentu dengan nama database:
show events from stackoverflow; -- note stackoverflow is my database name
Nonaktifkan atau aktifkan acara tertentu dengan nama di db yang dipilih saat ini:
ALTER EVENT Every_2_Minutes_QuestionUpdateImport disable;
ALTER EVENT Every_2_Minutes_QuestionUpdateImport enable;
Dan last but not least, ketika saya menulis Acara baru, saya selalu menambahkan awalnya dalam pernyataan acara untuk masuk ke tabel log (dengan pernyataan insert dan datetime now()
). Dengan begitu, saya tahu itu diaktifkan dan bahwa data dalam klausa di mana seperti milik Anda mungkin tidak membuat saya salah membaca semuanya.
Dan maksud saya, saya menjadi gila di mana-mana. Awalnya, lalu saya keluarkan nanti:
set filename:=concat('c:\\datavault\\stackoverflow\\app01\\batches\\processMe_',LPAD(@idToPerform, 8, '0'),'.txt');
set logMsg:=concat("It would appear I am to process this thing: ",filename);
insert EvtsLog(incarnationId,evtName,step,debugMsg,dtWhenLogged)
select incarnationId,evtAlias,10,logMsg,now(); -- 10: some step somewhere in the middle
Ingat untuk semua tujuan praktis (kecuali mungkin meja Anda yang benar-benar Anda pedulikan dari pertanyaan Anda) ... bahwa EvtsLog
milik saya adalah satu-satunya antarmuka pengguna Anda sebagai pemrogram Acara dan sahabat Anda.
Lihat halaman manual untuk mengetahui apa PADA PERAWATAN PENYELESAIAN berarti serta hal-hal lain.