В эти выходные я обновил рабочую станцию с Windows 8 до Windows 8.1. Это была рабочая станция для разработчиков, на которой был размещен локальный экземпляр MySQL 5.6, используемый для веб-разработки.
После завершения обновления я обнаружил, что служба MySQL не была запущена ... и не только это, служба полностью исчезла. Его больше не было в списке «услуг».
Все двоичные файлы по-прежнему присутствовали там, где ожидалось, в C: \ Program Files \ MySQL \ MySQL Server 5.6 \ bin
, но C: \ Program Files \ MySQL \ MySQL Server 5.6 \ data Папка
выглядела подозрительно маленькой ... файл ibdata1 был меньше 100 мегабайт, и эта рабочая станция имела гигабайты данных в таблицах базы данных InnoDB.
Разумеется, после того, как я вручную запустил сервер MySQL, оказалось, что он был сброшен на новую установку MySQL. Нет данных, кроме баз данных по умолчанию (т.е. mysql, information_schema, performance_schema), и единственным пользователем был root без пароля.
Моей первой мыслью было вернуться к точке восстановления системы до обновления, но, к сожалению, оказалось, что восстановление системы было либо отключено, либо все точки восстановления были стерты при обновлении 8.1.
Я не понимаю, что могло вызвать это. Это похоже на то, что обновление до Windows 8.1 "сбросило" установку MySQL.Служба установлена и снова запущена, но как насчет всех данных? Это просто ушло? Было бы неплохо получить предупреждение. Возможно, этот пост будет не чем иным, как предупреждением для других ( обязательная ссылка ), но я все еще надеюсь, что кто-нибудь подскажет, как восстановить мои данные ...
Я не могу объяснить, почему служба исчезла, но я выяснил, что случилось с данными.
Каким-то образом мой файл my.ini был полностью уничтожен. Получив копию этого файла, я увидел, что значение datadir было установлено на C: / ProgramData / MySQL / MySQL Server 5.6 / data \
Это не местоположение по умолчанию для C: \ Программные файлы \ MySQL \ MySQL Server 5.6 \ data
. Однако это местоположение устанавливается установкой MySQL.
Таким образом, при первоначальной установке MySQL был настроен не стандартный каталог данных (установщик, а не вмешательство пользователя). Затем обновление Windows 8.1 уничтожило службу и файл my.ini (который указывал на каталог данных не по умолчанию), и, таким образом, при перезапуске MySQL он смотрел в каталог по умолчанию, ничего не нашел, и, таким образом, все данные появились
Итак, в итоге, Решение было таким:
mysqld --install
C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini
Надеюсь, это поможет кому-то еще, кто столкнется с этой же проблемой!