Проверка готовности сервера MySQL выполнять запросы, не прерывая их - PullRequest
0 голосов
/ 02 августа 2020

Я использую образ Percona Docker исключительно для целей локального тестирования (5.6, потому что это то, что мне нужно проверить).

Я хочу запустить сценарий инициализации, когда сервер будет готов. До сих пор я пробовал две вещи, которые были упомянуты в других подобных вопросах: mysqladmin ping --silent и mysqladmin -uroot status.

Однако в обоих этих случаях, когда я запускаю сценарий инициализации, когда они возвращают 0, скрипт прерывается через секунду или две (ERROR 1317 (70100) at line ___: Query execution was interrupted). Большая часть скрипта выполняется, но последние несколько запросов не выполняются.

Если я жду, пока эти команды вернут 0 и , то спит еще на 5 секунд или около того , Меня не отвлекают. Почему такая разница в поведении? И как я могу проверить это перед запуском сценария инициализации, чтобы мне не приходилось держать уродливую sleep 5 в моем коде?

1 Ответ

0 голосов
/ 02 августа 2020

Оказывается, официальный образ Percona docker запускается и выключается MySQL пару раз, прежде чем он полностью загрузится, что вызывает прерывания.

Это можно проверить с помощью docker run percona:5.6.

Подробнее см. этот вопрос .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...