Как удалить корневой пароль MySQL [закрыто]

195

Я хочу удалить пароль для пользователя root в localhost. Как я могу это сделать? По ошибке я установил пароль пользователя root. Вот почему phpmyadmin выдает ошибку:

#1045 - Access denied for user 'root'@'localhost' (using password: NO)

нектар
источник
4
Почему бы не настроить phpMyAdmin на использование пароля root?
Sisve
2
Документация MySQL содержит инструкции о том, как сбросить пароль root в случае, если вы его забыли.
Майкл Мэдсен
Обратите внимание, что начиная с MySQL 5.7, случайный пароль root устанавливается по умолчанию, и вы не можете удалить его, не отключив validate_passwordсначала плагин. Смотрите мою статью Удаление корневого пароля MySQL или эту суть напрямую.
Бенджамин

Ответы:

361

Вам нужно установить пароль для того, root@localhostчтобы быть пустым. Есть два способа:

  1. Команда MySQL SET PASSWORD:

    SET PASSWORD FOR root@localhost=PASSWORD('');
  2. Используя mysqladminинструмент командной строки :

    mysqladmin -u root -pType_in_your_current_password_here password ''
Dario
источник
1
Как я могу сбросить пароль для базы данных Perticular?
нектар
4
mysqladmin -u root -pcurrent_password пароль '' - еще один способ сделать это.
crackity_jones
7
Мне нужно было сделать, а mysqladmin -u root -p password ''затем ввести пароль.
crizCraig
2
@crizCraig, вероятно, потому что ваш пароль не был CURRENTPASSWORD, аргумент пароля (в отличие от других аргументов) не имеет пробела после него. Если вы пропустите пароль, он попросит вас
ввести
3
@mOna попробуйте так: 1- выключите mysql (выключите сервис или убейте его); 2- создать файл, содержащий SET PASSWORD FOR root@localhost=PASSWORD('');звонки restore; 3- звонок mysqld_safe --init-file=path/to/restore; Наконец, войдите в систему и снова измените пароль с тем, что вы предпочитаете.
Дарио
23

Я также прошел через эту проблему,

Сначала я попытался установить пустой пароль root с помощью команды:

SET PASSWORD FOR root@localhost=PASSWORD('');

Но не радуйтесь, PHPMYADMIN использует 127.0.0.1, а не localhost, я знаю, вы бы сказали, что оба одинаковы, но это не так, используйте команду, указанную ниже, и все готово.

SET PASSWORD FOR root@127.0.0.1=PASSWORD('');

Просто замените localhost на 127.0.0.1, и все готово.

Файз Ахтар
источник
3
УСТАНОВИТЬ ПАРОЛЬ ДЛЯ root @ localhost = ПАРОЛЬ (''); работал для меня
workdreamer