Смена пароля пользователя MySQL

Alexander Shepetko31 декабря 2010, 07:00 1096 0

Смена пароля пользователя MySQL — одна из основных задач системного администратора. По умолчанию учётная запись root в MySQL — это административная учётная запись, обладающая максимумом привилегий. Обратите внимание, что root в MySQL — это не тот же самый root, который имеется в вашей операционной системе! Эти две одноимённые учётные записи не имеют между собой ничего общего, а некоторые администраторы в целях безопасности вообще переименовывают пользователя root в MySQL.

Смена пароля пользователя MySQL при помощи mysqladmin

Обычно, если вы явно не устанавливали пароль для пользователя (для примера возьмём пользователя root) в вашей инсталляции MySQL, то он является пустым. Таким образом, вы можете подключиться к серверу от имени пользователя, не указывая пароль вообще. Если в вашей системе пароль пользователя является пустым и вы хотите его установить, делается это при помощи простой команды (после опции -u указывается имя пользователя, от имени которого вы подключаетесь к серверу):

mysqladmin -u root password 'НОВЫЙ_ПАРОЛЬ'

Если же вы хотите сменить ранее установленный пароль, это можно сделать при помощи следующей команды:

mysqladmin -u root -p'ТЕКУЩИЙ_ПАРОЛЬ' password 'НОВЫЙ_ПАРОЛЬ'

Например, если текущий пароль root — 'abc' и вы хотите сменить его на '123456', команда будет выглядеть так:

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

Смена пароля пользователя MySQL при помощи SQL-команды

Это другой способ. MySQL хранит имена пользователей и их пароли в таблице своей собственной базы данных. Вы можете воспользоваться SQL-инструкцией, чтобы изменить пароль пользователя непосредственно в таблице пользователей MySQL.

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

mysql -u root -p

После успешного подключения к серверу, в оболочке MySQL-клиента переключитесь на БД с именем mysql:

USE mysql;

Смените пароль пользователя (замените vivek на имя нужного вам пользователя):

UPDATE user SET password=PASSWORD("НОВЫЙ_ПАРОЛЬ") where User='vivek';

Перезагрузите привилегии:

FLUSH PRIVILEGES;