img

Как сбросить root пароль на MySQL?

Может так случиться, что вы забудете или потеряете свой root пароль MySQL, но не стоит отчаиваться – его можно сбросить и восстановить доступ. Что нам нужно знать так это то, что пароль хранится в таблице пользователей. Это означает, что нам нужно найти способ обойти аутентификацию MySQL, чтобы мы могли обновить запись пароля.

К счастью, это легко сделать, и это руководство проведет вас через процесс восстановления или сброса пароля root в версии MySQL 8.0.

Согласно документации по MySQL, существует два способа сброса корневого пароля MySQL и в этой статье мы рассмотрим оба.

 Как сбросить root пароль на MySQL

Сброс MySQL root пароля с использованием –init-file

Один из способов сброса пароля root - создать локальный файл, а затем запустить службу MySQL, используя параметр --init-file, как показано ниже:

# vim /home/user/init-file.txt

Важно убедиться, что файл доступен для чтения пользователю mysql. В этот файл вставьте следующее и измените «new_password» на пароль, который вы хотите использовать:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

Теперь убедитесь, что служба MySQL остановлена. Вы можете сделать следующее:

# systemctl stop mysqld.service     # для дистрибутивов использующих systemd 
# /etc/init.d/mysqld stop           # для дистрибутивов использующих init

Далее запустите следующее:

# mysqld --user=mysql --init-file=/home/user/init-file.txt --console

Это запустит службу MySQL и во время процесса выполнит созданный вами файл инициализации, и, следовательно, пароль для пользователя root будет обновлен. Обязательно удалите файл после сброса пароля.

После этого обязательно остановите сервер и запустите его как обычно.

# systemctl stop mysqld.service        # для дистрибутивов использующих system
# systemctl restart mysqld.service     # для дистрибутивов использующих systemd
# /etc/init.d/mysqld stop              # для дистрибутивов использующих init 
# /etc/init.d/mysqld restart          # для дистрибутивов использующих init

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

# mysql -u root -p

Сброс MySQL root пароля с использованием –skip-grant-tables

Второй вариант - запустить службу MySQL с параметром --skip-grant-tables. Это менее безопасно, так как пока служба запускается таким образом, все пользователи могут подключаться без пароля.

Если сервер запущен --skip-grant-tables, опция для --skip-network активируется автоматически, поэтому удаленные подключения не будут доступны.

Сначала убедитесь, что служба MySQL остановлена.

# systemctl stop mysqld.service     # для дистрибутивов использующих systemd 
# /etc/init.d/mysqld stop           # для дистрибутивов использующих init

Затем запустите службу с помощью следующей опции.

# mysqld --skip-grant-tables --user=mysql &

Теперь вы можете подключиться к серверу MySQL, просто используя:

# mysql

Поскольку управление учетными записями отключается при запуске службы с параметром --skip-grant-tables, нам придется перезагрузить гранты. Таким образом, мы сможем изменить пароль позже:

# FLUSH PRIVILEGES;

Теперь вы можете выполнить следующий запрос, чтобы обновить пароль. Обязательно замените «new_password» реальным паролем, который вы хотите использовать.

# ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_passowrd';

Теперь остановите сервер MySQL и запустите его как обычно.

# systemctl stop mysqld.service        # для дистрибутивов использующих system
# systemctl restart mysqld.service     # для дистрибутивов использующих systemd
# /etc/init.d/mysqld stop              # для дистрибутивов использующих init 
# /etc/init.d/mysqld restart          # для дистрибутивов использующих init

Теперь вы сможете подключиться с новым паролем:

# mysql -u root –p
Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
Системное администрирование
Скидка 10%
Администратор Linux
Стань Linux администратором и сделай весомый шаг в сторону карьеры в DevOps. Самые важные знания от сертифицированного и практикующего тренера с 20 летним стажем
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Fail2ban — это программное обеспечение, которое защищает ваш сервер от атак. ПО отслеживает журналы сервера и выявляет любую под
img
Виртуализация серверов — популярная тема в мире ИТ, особенно на уровне предприятий. Она позволяет разным операционным системам з
img
  Введение Системные вызовы выступают в роли посредников между приложениями и ядром. Они создают уровень абстракции, который защ
img
  Введение SWAP (SWAP-память или SWAP-пространство) – это раздел жесткого диска или SSD компьютера, где операционная система (ОС
img
  Введение Абсолютные и относительные пути определяют расположение файла или каталога в файловой системе. Это набор инструкций д
img
  Введение Файлы конфигурации Linux определяют поведение и функциональное наполнение операционной системы. Файлы конфигурации –
ЗИМНИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59