💡 Совет

Планировщик событий в MySQL

19.11.2019 1 минута чтения

Планировщик событий в MySQL 15 декабря 2011 MySQL 10904 просмотра Начиная с версии 5.1 в MySQL появился планировщик событий, позволяющий выполнять различные действия в определенное время. Из этого следует то, что часть функционала можно перенести из Cron на сам MySQL. По умолчанию, планировщик отключен. Включим его в конфиге.

event_scheduler = On

Или при помощи запроса.

SET GLOBAL event_scheduler = On;

Проверить текущее значение переменной можно следующим запросом.

SHOW VARIABLES LIKE 'event_scheduler';

Официальное описание команды CREATE EVENT Команда не сложная. Указываем название события, точное время выполнения или интервал и сам исполняемый SQL. Создадим простое событие удаления всех неактивных пользователей каждый день.

CREATE EVENT `delete_inactive`
ON SCHEDULE EVERY 1 DAY
DO
DELETE FROM `user` WHERE `active` = 0;

Чтобы посмотреть информацию о событии, нужно выполнить следующий запрос.

SHOW EVENTS LIKE 'delete_inactive';

События можно изменять. Сделаем так, чтобы событие по удалению пользователей запускалось каждый час.

ALTER EVENT `delete_inactive`
ON SCHEDULE EVERY 1 HOUR;

Экспертное мнение Алексей

В веб-разработке с 2012 года. Специализируюсь на PHP, JavaScript и архитектуре высоконагруженных проектов. Автор статей по оптимизации, API и базам данных.

Все статьи автора →
Telegram VK Twitter
Читайте также
Web-сервис на Zend_Soap
Web-сервис на Zend_Soap
Web-сервис на Zend_Soap 13 сентября 2011 PHP 16532 просмотра Web-сервис — компонент, предоставляющий Internet-клиентам набор функций API или web-методов. Основная...
Изменение URL без перезагрузки страницы
Изменение URL без перезагрузки страницы
С развитием WEB понятие о странице немного изменилось. Для конечного пользователя улучшением производительности и комфорта http://Komfort-v-dome24.ru путешествия по сайту, для...