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

Как сбросить пароль root для MySQL или MariaDB

Забыли пароль root для MySQL? Не волнуйтесь, это случается со всеми.

В этой статье мы покажем вам, как сбросить пароль root в MySQL из командной строки.

Определите версии сервера

В зависимости от версии сервера MySQL или MariaDB, установленной в вашей системе, для восстановления пароля root вам потребуется использовать разные команды.

Узнать версию вашего сервера можно, выполнив следующую команду:

 mysql --version

Если в вашей системе установлен MySQL, вывод будет выглядеть примерно так:

 mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper

Или вот такой вывод для MariaDB:

 mysql Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Обязательно запишите, какую версию MySQL или MariaDB вы используете.

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

Чтобы сбросить пароль root для MySQL/MariaDB, выполните следующие действия:

1. Остановите службу MySQL/MariaDB

Чтобы изменить пароль root, необходимо остановить сервер MySQL. Для этого введите следующую команду:

 sudo systemctl stop mysql

2. Запустите сервер MySQL/MariaDB без загрузки таблиц привилегий

Запустите сервер базы данных без загрузки таблиц привилегий:

 sudo mysqld_safe --skip-grant-tables &

Амперсанд & в конце команды выше заставит программу работать в фоновом режиме , и вы сможете продолжать использовать оболочку.

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

3. Войдите в оболочку MySQL

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

 mysql -u root

4. Установите новый пароль root

  • Выполните следующие команды, если вы используете MySQL 5.7.6 и более поздние версии или MariaDB 10.1.20 и более поздние версии:

     ALTER USER 'root'@'localhost' IDENTIFIED BY 'MY_NEW_PASSWORD'; FLUSH PRIVILEGES;

    Если оператор ALTER USER не работает, попробуйте напрямую изменить таблицу пользователей:

     UPDATE mysql.user SET authentication_string = PASSWORD('MY_NEW_PASSWORD') WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
  • Выполните следующие команды, если у вас MySQL 5.7.5 и более ранние версии или MariaDB 10.1.20 и более ранние версии:

     SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MY_NEW_PASSWORD'); FLUSH PRIVILEGES;

В обоих случаях, если все пройдет хорошо, вы должны увидеть следующий вывод:

 Query OK, 0 rows affected (0.00 sec)

5. Остановите и запустите сервер базы данных в обычном режиме

Теперь, когда пароль root установлен, остановите сервер базы данных и запустите его в обычном режиме:

 mysqladmin -u root -p shutdown

Вам будет предложено ввести новый пароль root.

Запустите сервер базы данных в обычном режиме:

  • Для MySQL введите:

     sudo systemctl start mysql
  • Для MariaDB введите:

     sudo systemctl start mariadb

6. Подтвердите пароль

Чтобы проверить правильность применения нового пароля root, введите:

 mysql -u root -p

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

Заключение

Мы показали вам, как сбросить пароль root для MySQL/MariaDB. Убедитесь, что ваш новый пароль root надёжен и безопасен, и сохраните его в надёжном месте.

Инструкции в этом руководстве должны работать с любым современным дистрибутивом Linux, таким как Ubuntu 18.04, Debian 10 и CentOS 8.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии.

mysql mariadb

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *