Bạn có thể sử dụng MySQL event Scheduler.
Điều kiện tiên quyết:
Bạn phải BẬT event_scheduler trong máy chủ mysql của mình.
Kiểm tra xem bộ lập lịch sự kiện có ON
hay không hoặc OFF
SELECT @@event_scheduler;
Để BẬT event_scheduler ON
chạy truy vấn sau:
SET GLOBAL event_scheduler = ON;
Lưu ý: Nếu bạn khởi động lại MYSQL Server
thì trạng thái của bộ lập lịch sự kiện sẽ được đặt lại trừ khi phần sau được ghi trong tệp cấu hình.
Đối với Windows: trong my.ini ghi tệp này dưới [mysqld]
phần
[mysqld]
event_scheduler=on
Đối với Linux: trong my.cnf tệp
[mysqld]
event_scheduler=on
Sự kiện:
Sự kiện sau sẽ xóa dữ liệu khỏi bảng có tên tablename
.
CREATE
EVENT `deleteEvent`
ON SCHEDULE EVERY 2 MINUTE STARTS '2016-03-23 00:00:00'
ON COMPLETION NOT PRESERVE
ENABLE
DO
DELETE FROM tablename;
Sự kiện sẽ được bắt đầu lần đầu tiên lúc '2016-03-23 00:00:00'
và sau đó, sự kiện sẽ được lên lịch sau mỗi 2 phút và sẽ xóa dữ liệu khỏi bảng của bạn.
Bạn có thể sử dụng Truncate
thay vì DELETE
.