linux - mysql 异常:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

Posted 萧韶九成

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux - mysql 异常:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement相关的知识,希望对你有一定的参考价值。

问题描述

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

备注:新安装完数据库后,在 xshell 上登录 mysql 后,运行 SQL 语句报如上错误

 

解决方案一

# /etc/init.d/mysql stop // 关闭 mysql

# mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 

# mysql -u root mysql // 进入 mysql

mysql> UPDATE user SET Password=PASSWORD(‘newpassword‘) where USER=‘root‘ and host=‘root‘ or host=‘localhost‘; //把空的用户密码都修改成非空的密码就行了。

mysql> FLUSH PRIVILEGES;

mysql> quit # /etc/init.d/mysqld restart

# mysql -uroot -p

Enter password: <输入新设的密码newpassword>

解决方案二

mysql>  SET PASSWORD = PASSWORD(‘123456‘);  // 用这句话重新设置一次密码,就可以了

 

备注

方案一、二可以搭配使用,先用一,再用二

 



以上是关于linux - mysql 异常:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement的主要内容,如果未能解决你的问题,请参考以下文章

Linux启动Mysql服务Error | 持续启动...完美解决

Linux启动Mysql服务Error | 持续启动...完美解决

ERROR 1129 (HY000): Too many connection errors from

Linux 文件系统引起的云盘文件系统异常导致 MySQL 数据页损坏事故恢复复盘

MySQL以异常方式中断SP执行

转mysql无法启动,mysql启动异常