Страницы

Поиск по вопросам

среда, 10 июля 2019 г.

error: 'Access denied for user 'root'@'localhost' (using password: NO)' MAMP

Скачал MAMP, вбиваю в терминале:
./mysqladmin -u root - password "newpassword"
и выдает это ошибку error:
'Access denied for user 'root'@'localhost' (using password: NO)'
Что делать?


Ответ

Утилиты MySQL позволяют задать пароль аккаунта при помощи параметра --password или его краткой формы -p. В полной форме, если вы не указываете пароль, он запрашивается у вас отдельно
./mysqladmin -u root --password
Вы можете указать пароль в командной строке, через =
./mysqladmin -u root --password=newpassword
В краткой форме параметра -p, без указания пароля, пароль будет запрошен сразу после выполнения команды
./mysqladmin -u root -p
Или вы можете указать его сразу после параметра введя его без пробела и дополнительных символов
./mysqladmin -u root -pnewpassword
Однако, указывать пароль в командной строке считается дурным тоном, так как команда остается в логах, которые в случае взлома могут быть использованы злоумышленником для увеличения привилегий. Если использование пароля в команде необходимо, можно предварить команду пробелом
$ ./mysqladmin -u root -pnewpassword
В этом случае она не попадет в историю. Однако, на практике чаще прибегают локальному конфигурационному файлу пользователя ~/.my.cnf, в котором указывают предпочтительный логин и пароль, выставляя права доступа на него таким образом, чтобы прочитать его мог только владелец.
[client] user=root password=newpassword

Комментариев нет:

Отправить комментарий