Как можно изменить пароль пользователя root в MySQL под Linux, FreeBSD, OpenBSD и UNIX подобных операционных системах с использованием ssh/telnet сессии?

Настройка пароля в MySQL является одной из основных задач и первоочередных задач. По умолчанию пользователь root является администратором в MySQL. Стоит обратить внимание, что пароль пользователя root в Linux/UNIX и root в MySQL — это разные пользователи и пароли у них также должны быть разные. Они являются самостоятельными и ничего общего между ними нет и не должно быть. Иногда можно произвести удаление пользователя root в MySQL и установить пользователя admin в MySQL в качестве администратора по некоторых соображениям, которые связаны напрямую с безопасностью.

Команда mysqladmin для изменения пароля пользователя root

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

$ mysqladmin -u root password NEWPASSWORD

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

$ mysqladmin -u root -p 'oldpassword' password newpass

Например, если старый пароль abc, можно установить новый пароль в виде 123456, введя команду:

$ mysqladmin -u root -p 'abc' password '123456'

Изменение пароля в MySQL для других пользователей

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

$ mysqladmin -u vivek -p oldpassword password newpass

Изменение пароля пользователя root в MySQL с использованием команд SQL

Это еще один метод. MySQL хранит имя пользователя и пароли в таблице пользователей в базе данных MySQL. Можно непосредственно обновить пароль, используя следующий метод, для пользователя normal_user:

1) Войти на сервер MySQL, ввести следующую команду в командной строке:

$ mysql -u root -p

2) Перейти в базу данных mysql:

mysql> use mysql;

3) Изменить пароль для пользователя normal_user и ввести при этом команду:

mysql> update user set password=PASSWORD("NEWPASSWORD") where User='normal_user';

4) Наконец, перезагрузка привилегий:

mysql> flush privileges;
mysql> quit

Последний метод может быть использован с сценариями PHP, Python или Perl в MySQL API.