连接mysql报错Access denied for user 'root'@'localhost' (using password: YES)解决办法

1.打开MySQL目录下的my.ini文件,在文件的最后添加一行“skip-grant-tables”(免密码登录),保存并关闭文件,重启MySQL服务。

2.通过命令行进入MySQL的BIN目录,输入“mysql -u root -p”(不输入密码),回车即可进入数据库。

3.执行“use mysql;”,使用mysql数据库。

4。修改密码:执行“ update MySQL.user set authentication_string=password('root') where user='root'”(新安装的MySQL5.7数据库下已经没有password这个字段了,password字段改成了authentication_string)。

5.打开MySQL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。重启MySQL服务,在命令行中输入“mysql -u root -p    root”,即可成功连接数据库。

接着登录SQLyog时又出现错误,错误号码1862:your password has expired。解决方法通过命令行进入数据库输入
mysql> SET PASSWORD = PASSWORD('root');  问题解决。

上一篇:JQuery选择器大全 前端面试送命题:面试题篇 对IOC和DI的通俗理解 c#中关于协变性和逆变性(又叫抗变)帮助理解


下一篇:每周分享之JS数组的使用