Поиск по сайту:

Как сбросить корневой пароль MySQL или MariaDB в Linux


Если вы впервые настраиваете сервер базы данных MySQL или MariaDB, скорее всего, вскоре после этого вы запустите mysql_secure_installation для реализации основных настроек безопасности.

Одной из этих настроек является пароль для корневой учетной записи базы данных, который вы должны хранить в тайне и использовать только в случае крайней необходимости. Если вы забыли пароль или вам необходимо его сбросить (например, когда администратор базы данных меняет роли – или его увольняют!).

Рекомендуем прочитать: Измените корневой пароль MySQL или MariaDB

Эта статья вам пригодится. Мы объясним, как сбросить или восстановить забытый пароль root MySQL или MariaDB в Linux.

Хотя в этой статье мы будем использовать сервер MariaDB, инструкции должны подойти и для MySQL.

Восстановить корневой пароль MySQL или MariaDB

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


------------- SystemD ------------- 
systemctl stop mariadb

------------- SysVinit -------------
/etc/init.d/mysqld stop

Затем запустите службу с помощью --skip-grant-tables:


------------- SystemD ------------- 
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
systemctl start mariadb
systemctl status mariadb

------------- SysVinit -------------
mysqld_safe --skip-grant-tables &

Это позволит вам подключиться к серверу базы данных с правами root без пароля (для этого вам может потребоваться переключиться на другой терминал):


mysql -u root

С этого момента выполните шаги, описанные ниже.


MariaDB [(none)]> USE mysql;
MariaDB [(none)]> UPDATE user SET password=PASSWORD('YourNewPasswordHere') WHERE User='root' AND Host = 'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;

Наконец, остановите службу, отключите переменную среды и запустите службу еще раз:


------------- SystemD ------------- 
systemctl stop mariadb
systemctl unset-environment MYSQLD_OPTS
systemctl start mariadb

------------- SysVinit -------------
/etc/init.d/mysql stop
/etc/init.d/mysql start

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

Краткое содержание

В этой статье мы обсудили, как сбросить пароль root MariaDB/MySQL. Как всегда, не стесняйтесь использовать форму комментариев ниже, чтобы оставить нам сообщение, если у вас есть какие-либо вопросы или отзывы. Мы с нетерпением ждем вашего ответа!