连接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('123456') where user='root'”(新安装的MySQL5.7数据库下已经没有password这个字段了,password字段改成了authentication_string)。
5.打开MySQL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。重启MySQL服务,在命令行中输入“mysql -u root -p 123456”,即可成功连接数据库。
接着登录SQLyog时又出现错误,错误号码1862:your password has expired。解决方法通过命令行进入数据库输入
mysql> SET PASSWORD = PASSWORD('123456'); 问题解决。