Может ли соединение быть установлено до того, как процедуры, подключенные к событию запуска, выполняются в MySQL?

0

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

init_file = '.../startup.sql';

выполняется?

Если нет, существуют ли какие-либо альтернативные методы, например, временные глобальные переменные, которые сбрасываются каждый раз при запуске сервера?

  • 0
    Отойдите на минутку: что вы пытаетесь предотвратить / достичь? Клиенты получают информацию во время запуска сервера sql? Почему эти значения не могут быть сохранены в БД напрямую или сделаны через временную таблицу / представление?
  • 0
    Я делаю ORM, и он должен очистить те ссылочные записи, которые не удаляются, если база данных случайно закрыта, чтобы сборщик мусора мог работать правильно. @Rogue
Теги:

1 ответ

0

Вы можете установить глобальную переменную в конфигурационном файле mysqld, и ваши задачи изменят это значение после их завершения. Он будет сбрасываться при каждом запуске сервера. Это будет работать как флаг, который вы ищете. Вы также можете использовать СОБЫТИЕ, чтобы проверить это.

Тем не менее, вы бы лучше описали процесс запуска своего MySQL-сервиса для выполнения задач очистки после того, как он вернется, и он установил соединение локально для их выполнения. Если бы это было важно, вы могли бы разрешить удаленные подключения только после выполнения своих задач.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню