Задать вопрос
@immelnikoff
Изучаю БД

Можно ли из MySQL запускать внешние скрипты?

Имеется таблица (MySQL) расписаний включений и выключений уличного освещения по разным городам.
Внешний php-скрипт раз в сутки запрашивает из базы расписание на текущую дату. Бывают ситуации, когда приходится оперативно апдейтить расписание на текущую дату из терминала MySQL. Но скрипт об этом апдейте не знает...
Как сообщить из MySQL внешнему миру (php-скрипту) о том, что данные изменились и их нужно перезапросить?
  • Вопрос задан
  • 443 просмотра
Подписаться 4 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@vitaly_il1
DevOps Consulting
Это возможно - www.abrandao.com/2017/09/mysql-mariadb-trigger-ext... но я советую этого не делать, а использовать крон скрипт, который будет проверять и обрабатывать изменения в таблице . И крон будет бежать каждые 5 минут, например.
Вызывать внешний скрипт из триггера опасно - что если будет одновременно 100 изменений?
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Внешний php-скрипт раз в сутки запрашивает из базы расписание на текущую дату.
Сделайте синусоидный опрос по крону: днём/ночью - реже, утром/вечером - чаще.

Бывают ситуации, когда приходится оперативно апдейтить расписание на текущую дату из терминала MySQL. Но скрипт об этом апдейте не знает...
Вот эта часть - совсем другая: уже локальная! Здесь базу можно опрашивать хоть каждые 5 минут (т.к. это трафик во внешку не гоняет). Мониторите нужное поле в БД и как только там есть хэш, отличный от текущего - пусть лезет во внешку и забирает новый update.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы