加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MYSQL教程You must SET PASSWORD before executing this stateme

发布时间:2020-12-12 01:05:00 所属栏目:MySql教程 来源:网络整理
导读:《MYSQL教程You must SET PASSWORD before executing this statement的解决方法》要点: 本文介绍了MYSQL教程You must SET PASSWORD before executing this statement的解决方法,希望对您有用。如果有疑问,可以联系我们。 参考前文利用安全模式成功登陆,然

《MYSQL教程You must SET PASSWORD before executing this statement的解决方法》要点:
本文介绍了MYSQL教程You must SET PASSWORD before executing this statement的解决方法,希望对您有用。如果有疑问,可以联系我们。

参考前文利用安全模式成功登陆,然后修改密码,等于给MySql设置了密码.登陆进去后,想创建一个数据库测试下.得到的结果确实:

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

非常诡异啊,明明用密码登陆进去了,怎么还提示需要密码.
参考官方的一个文档,见http://dev.mysql.com/doc/refman/5.6/en/alter-user.html.如下操作后就ok了:

mysql> create database yan1;
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
mysql> SET PASSWORD = PASSWORD('123456');
Query OK,0 rows affected (0.03 sec)

mysql> create database yan1;
Query OK,1 row affected (0.00 sec)


也就是用mysql> SET PASSWORD = PASSWORD('123456');这句话重新设置一次密码!大爷的,真费劲啊.
这位仁兄也遇到了相同的问题.


最近新装好的mysql在进入mysql工具时,总是有错误提示:

# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
或者
# mysql -u root -p password 'newpassword'
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'

现在终于找到解决方法了.本来准备重装的,现在不必了.
方法操作很简单,如下:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root 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>

MySql5.6操作时报错:You must SET PASSWORD before executing this statement解决
mysql> SET PASSWORD = PASSWORD('123456');
Query OK,0 rows affected (0.03 sec)
mysql> create database roger;
Query OK,1 row affected (0.00 sec)
也就是用mysql> SET PASSWORD = PASSWORD('123456');这句话重新设置一次密码!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读