alter user mysql_在Mac上安装后,使用ALTER USER语句重置MySQL根密码

mysql> UPDATE mysql.user SET Password=PASSWORD('your_new_password')

WHERE User='root';

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

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

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

If you started mysql using mysql -u root -p

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

I have same problem on Mac

First, log in mysql with sandbox mode

mysql -u -p --connect-expired-password

Then, set password

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

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

It works for me ~

If you use MySQL 5.7.6 and later:

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

If you use MySQL 5.7.5 and earlier:

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

Run these:

$ cd /usr/local/mysql/bin

$ ./mysqladmin -u root password 'password'

Then run

./mysql -u root

It should log in. Now run

FLUSH privileges;

Then exit the MySQL console and try logging in. If that doesn't work run these:

$ mysql -u root

mysql> USE mysql;

mysql> UPDATE user SET authentication_string=PASSWORD("XXXXXXX") WHERE User='root';

mysql> FLUSH PRIVILEGES;

mysql> quit

Change xxxxxx to ur new password. Then try logging in again.

It should solve your problem.

If you are on oracle try this

ALTER USER username IDENTIFIED BY password

On MySQL 5.7.x you need to switch to native password to be able to change it, like:

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

Maybe try that ?

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

or

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

Depending on which access you use.

(and not sure you should change yourself field names...)

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

Use this line...

On Ver 14.14 Distrib 5.7.19, for macos10.12 (x86_64), I logged in as:

mysql -uroot -p then typed in the generated password by MySQL when you install it. Then..

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

Example:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ab1234';

Query OK, 0 rows affected (0.00 sec)

mysql> exit

Bye

$ mysql -uroot -p

And you can type in 'Ab1234'

UPDATE user SET authentication_string=PASSWORD("MyPassWord") WHERE User='root';

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '("MyPassWord") WHERE User='root'' at line 1

Resolved with

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

Reference from below site

This worked for me:

ALTER USER USER() IDENTIFIED BY 'auth_string';

Mysql 5.7.24 get root first login

step 1: get password from log

grep root@localhost /var/log/mysqld.log

Output

2019-01-17T09:58:34.459520Z 1 [Note] A temporary password is generated for root@localhost: wHkJHUxeR4)w

step 2: login with him to mysql

mysql -uroot -p'wHkJHUxeR4)w'

step 3: you put new root password

SET PASSWORD = PASSWORD('xxxxx');

you get ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

how fix it?

run this SET GLOBAL validate_password_policy=LOW;

Try Again SET PASSWORD = PASSWORD('xxxxx');

When you use SET PASSWORD = PASSWORD('your_new_password'); it may crash for it

(ERROR 1819 (HY000): Your password does not satisfy the current policy

requirements)

.you can use SET GLOBAL validate_password_policy=LOW; to slove it.

Here is the way works for me.

mysql> show databases ;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

mysql> uninstall plugin validate_password;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

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

Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.03 sec)

in 5.7 version. 'password' field has been deleted. 'authentication_string' replace it

use mysql;

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

flush privileges;

I also got the same problem in mac OS X 10.10.4(Yosemite).SET PASSWORD work for me.Alter password for mysql-

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

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

set your Mysql environment path variable in .bash_profile and add the below line

export PATH=$PATH:/usr/local/mysql/bin,

after that, run the following command :source .bash_profile

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值