Удалил рута. Как восстановить? - MySQL
Формулировка задачи:
Удалил рута, теперь не могу зайти в phpMyAdmin. Как его восстановить и поставить на него пароль? Денвера нет, есть wamp и винда.
Решение задачи: «Удалил рута. Как восстановить?»
textual
Листинг программы
- @echo off
- echo USE mysql; >.sql
- echo. >>addroot.sql
- echo INSERT INTO user VALUES ('localhost', 'root', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0, 0, 0, 0, '', ''); >>addroot.sql
- echo INSERT INTO user VALUES ('127.0.0.1', 'root', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0, 0, 0, 0, '', ''); >>addroot.sql
- mysqld.exe --no-defaults --bind-address=127.0.0.1 --bootstrap --console --standalone <addroot.sql >nul
- del addroot.sql
- pause
Объяснение кода листинга программы
- Создается файл addroot.sql
- В файл addroot.sql записывается SQL-команда INSERT INTO user с значениями для имени пользователя, хоста и прочих параметров, указывающих на роль и права пользователя.
- Запускается исполняемый файл mysqld.exe с различными флагами, включая --bind-address, указывающий на адрес, по которому следует привязываться к серверу.
- Файл addroot.sql передается в качестве входного потока для исполняемого файла mysqld.exe, который выполняет SQL-команду INSERT INTO user.
- Результат работы скрипта перенаправляется в nul, что обычно означает
никуда
. - После выполнения всех команд, файл addroot.sql удаляется.
- Пользователю предлагается нажать любую клавишу, чтобы продолжить.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д