您的位置:首页 > 数据库 > MySQL

MYSQL ERROR 1862 (HY000): Your password has expired.

2016-03-12 15:07 489 查看
一:

打开MySQL/bin目录下输入mysql -uroot -p ,默认是没有密码的,一般是直接按回车进入,但是会出现ERROR 1045 (28000): Access denied for user'root'@'localhost'(using password: YES)的错误 。网上一搜很多人都有出现这个错误一般解决的方法都是在在配置文件[mysqld]条目下加一条命令skip-grant-tables然后重启就可以略过密码进入了。

在cmd里面输入mysql -u root-p就可以不用密码登录了,出现password:的时候直接回车可以进入,不会出现ERROR 1045(28000),但很多操作都会受限制,因为没有不能grant(没有权限)的密码

1.进入mysql数据库:

mysql> use mysql;Database changed

2.给root用户设置新密码mysql> update user set authentication_string=password("新密码") whereuser="root";Query OK,1 rows affected(0.01 sec)Rows matched:1 Changed:1Warnings: 0

3.刷新数据库 (一定要记得刷新)mysql>flush privileges; QueryOK, 0 rows affected (0.00 sec)

4.退出mysql:mysql> quit

最后把配置文件中的skip-grant-tables 注释掉。下次输入mysql -uroot -p 就可以用新密码登录了

二:

登陆遇到错误:

ERROR 1862 (HY000): Your password has expired. To log in you must

change it using a client that supports expired passwords.

原因是:

MySQL 5.6 introduces password-expiration capability, to enable database administrators to expire account passwords and require users to reset their password. 

所以只需重新修改下密码即可,修改方式如下:

以root权限登录mysql:(这里我的账户是root,密码也是root)

mysql -uroot -proot

然后更改密码:

SET PASSWORD = PASSWORD('root');

如果还是不行,用无密码方式进入,修改mysql数据库下的user表的password_expired=N
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql