Reset Пароль пользователя MySQL с использованием инструкции ALTER USER после установки на Mac - программирование

Reset Пароль пользователя MySQL с использованием инструкции ALTER USER после установки на Mac

Я новичок во всем Mac. Недавно я установил MySQL, и, кажется, мне нужно reset пароль после установки. Это не позволит мне делать что-либо еще.

Теперь я уже reset пароль обычным способом:

update user set password = password('XXX') where user = root;

(BTW: взял меня на ум, чтобы понять, что MySQL по какой-то странной причине переименовал поле "пароль" в "authentication_string". Я очень расстроен из-за таких изменений.)

К сожалению, мне кажется, мне нужно изменить пароль другим способом, который мне неизвестен. Может быть, кто-то здесь уже столкнулся с этой проблемой?

4b9b3361

Ответ 1

mysql> UPDATE mysql.user SET Password=PASSWORD('your_new_password')
       WHERE User='root'; 

ОШИБКА 1820 (HY000): перед выполнением этого оператора необходимо сбросить пароль с помощью инструкции ALTER USER.

mysql> SET PASSWORD = PASSWORD('your_new_password');

Запрос в порядке, затронуто 0 строк, 1 предупреждение (0,01 с)


Вот где я нашел ответ: https://dev.mysql.com/doc/refman/5.6/en/alter-user.html

Ответ 3

У меня такая же проблема на Mac

Во-первых, войдите в mysql в режиме песочницы

mysql -u <user> -p --connect-expired-password

Затем установите пароль

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

Query OK, 0 rows affected, 1 warning (0.01 sec)

Это работает для меня ~

через: https://dba.stackexchange.com/questions/118852/your-paswssword-has-expired-after-restart-mysql-when-updated-mysql-5-7-8-rcde

Ответ 4

Если вы используете MySQL 5.7.6 и более поздние версии:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

Если вы используете MySQL 5.7.5 и ранее:

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

Документация по MySQL

Ответ 5

Запустите их:

$ cd /usr/local/mysql/bin
$ ./mysqladmin -u root password 'password'

Затем запустите

./mysql -u root

Он должен войти в систему. Теперь запустите   Привилегии FLUSH;

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

$ mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET authentication_string=PASSWORD("XXXXXXX") WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

Измените xxxxxx на новый пароль. Затем попробуйте войти в систему снова.

Update. Смотрите http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

Он должен решить вашу проблему.

Если вы находитесь в oracle, попробуйте это

ALTER USER username IDENTIFIED BY password

Ответ 6

ALTER USER 'root' @'localhost' IDENTIFIED BY 'new_password';

Используйте эту строку...

Ответ 7

В MySQL 5.7.x вам нужно переключиться на собственный пароль, чтобы изменить его, например:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';

Ответ 8

Может попробовать это?

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

или же

SET PASSWORD FOR 'root'@'%' = PASSWORD('XXX');

В зависимости от того, какой доступ вы используете.

(и не уверен, что вы должны изменить себе имена полей...)

https://dev.mysql.com/doc/refman/5.0/en/set-password.html

Ответ 9

В Ver 14.14 Distrib 5.7.19, for macos10.12 (x86_64) я вошел в систему как: mysql -uroot -p затем набрал сгенерированный пароль MySQL при его установке. Затем..

ALTER USER 'root'@'localhost' IDENTIFIED BY '<new_password>';

Пример:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ab1234'; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye $ mysql -uroot -p

И вы можете ввести "Ab1234"

Ответ 10

ОБНОВЛЕНИЕ пользователя УСТАНОВИТЬ authentication_string = ПАРОЛЬ ("MyPassWord") ГДЕ Пользователь = "root"; ОШИБКА 1064 (42000): у вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы узнать правильный синтаксис для использования рядом с '("MyPassWord"), ГДЕ пользователь =' root '' в строке 1

Решено с

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

Ссылка с сайта ниже

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html

Ответ 12

Когда вы используете SET PASSWORD = PASSWORD('your_new_password');, он может сработать для него

(ОШИБКА 1819 (HY000): ваш пароль не соответствует текущей политике Требования)

. Вы можете использовать SET GLOBAL validate_password_policy=LOW; для его использования.

Ответ 13

У меня тоже такая же проблема в Mac OS X 10.10.4 (Yosemite).SET PASSWORD работает для меня. Введите пароль для mysql- mysql > SET PASSWORD = PASSWORD ('your_password'); Запрос ОК, 0 строк затронуты, 1 предупреждение (0,01 сек)

задайте переменную пути среды Mysql в .bash_profile и добавьте строку ниже. export PATH = $PATH:/usr/local/mysql/bin, после этого запустите следующую команду: source.bash_profile

Ответ 14

У меня возникла проблема после установки mysql workbench и сервера сообщества mysql. Получил сгенерированный пароль во время установки сервера. Двойной щелчок на существующем локальном экземпляре в workbench вызвал диалог, в котором я мог бы установить новый пароль.

Ответ 15

mysql> SET PASSWORD = PASSWORD('your_new_password'); Это подходит для меня.

Ответ 16

помните версии 5.7.23 и выше - в пользовательской таблице нет пароля для столбца, а вместо строки аутентификации, поэтому ниже работает при сбросе пароля для пользователя.

update user set authentication_string=password('root') where user='root';

Ответ 17

Вот способ, который работает для меня.

mysql> show databases ;

ОШИБКА 1820 (HY000): перед выполнением этого оператора необходимо сбросить пароль с помощью инструкции ALTER USER.

mysql> uninstall plugin validate_password;

ОШИБКА 1820 (HY000): перед выполнением этого оператора необходимо сбросить пароль с помощью инструкции ALTER USER.

mysql> alter user 'root'@'localhost' identified by 'root';

Запрос в порядке, затронуто 0 строк (0,01 с)

mysql> flush privileges;

Запрос в порядке, затронуто 0 строк (0,03 сек)

Ответ 18

Mysql 5.7.24 получить root первый логин

Шаг 1: получить пароль из журнала

 grep [email protected] /var/log/mysqld.log
    Output
        2019-01-17T09:58:34.459520Z 1 [Note] A temporary password is generated for [email protected]: wHkJHUxeR4)w

шаг 2: войдите с ним в MySQL

mysql -uroot -p'wHkJHUxeR4)w'

шаг 3: вы вводите новый пароль root

SET PASSWORD = PASSWORD('xxxxx');

вы получите ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

как это исправить?

запустите этот SET GLOBAL validate_password_policy=LOW;

Попробуйте еще раз SET PASSWORD = PASSWORD('xxxxx');