Новости
Семь Чёрных пятниц на неделе — и все в Serverspace!
Serverspace Black Friday
VB
13 ноября 2022
Обновлено 13 ноября 2022

Как «сбросить» root-пароль для MySQL или MariaDB в Ubuntu 20.04

Ubuntu Базы данных

Что такое MySQL и MariaDB

MySQL и MariaDB - очень популярные системы управления базами данных, основанных на языке запросов SQL. Сегодня их используют для веб-сайтов, проектов по машинному обучению, в различных средах разработки и так далее.

Зачем может понадобиться сбрасывать пароль

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

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

Чтобы установить новый пароль для пользователя root сервиса управления базами данных (ВНИМАНИЕ - это НЕ системный пользователь root!), выполните следующие действия:

Войдите на свой сервер как привилегированный пользователь;

Остановите службу;

service mysql stop # для MySQL
service mariadb stop # для MariaDB

pic1

Временно разрешите аутентификацию без пароля и запустите службу:

cat << EOF >> /etc/mysql/my.cnf
[mysqld]
skip-grant-tables
EOF
service mysql start

pic2

Авторизуйтесь в системе управления базами данных и установите новый root-пароль:

mysql
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'новый_пароль';
exit

pic3

Удалите директиву skip-grant-tables из «системного» конфигурационного файла и перезапустите службу:

service mysql stop; sed -i -e '$d' /etc/mysql/my.cnf && sed -i -e '$d' /etc/mysql/my.cnf; service mysql start

pic4

Обратите внимание - я не случайно запустил команду sed -i -e '$d' дважды, а потому, что из конфигурационного файла нужно удалить две последние строки.

Проверка и настройка для более удобного использования в дальнейшем

Чтобы проверить все ли у вас получилось, давайте попробуем авторизоваться в сервисе:

mysql -uroot -p<новый_пароль>

pic5

Как видите, авторизация прошла успешно. Чтобы сделать дальнейшее использование сервиса более комфортным, можно сохранить новый пароль в специальный файл в вашем домашнем каталоге. Это позволит вам в дальнейшем не вводить пароль для входа в сервис:

cat << EOF > ~/.my.cnf

[client]
user = root
password = <your_new_password>
EOF

pic6

Заключение

Теперь вы знаете, как сбросить root-пароль для сервисов MySQL или MariaDB, знаете зачем может понадобиться эта операция и как сделать дальнейшее использование данного приложения более комфортным.

Оценка:
5 из 5
Аverage rating : 5
Оценок: 1
050000 г. Алматы пр. Сейфуллина, д. 502
+7 (777) 555-36-66
ООО «ИТГЛОБАЛКОМ ЛАБС»