这两天在MyEclipse中开发Web项目时,连接MYSQL数据库,出现问题:Access denied for user 'root'@'localhost'(using password:YES)。
经查找资料发现是root帐户默认不开放远程访问权限,所以需要修改一下相关权限。
解决方案:
- 打开MySQL目录下的my.ini文件,在文件的最后添加一行“skip-grant-tables”,保存并关闭文件。(WIN7默认安装,my.ini在C:\ProgramData\MySQL\MySQL Server 5.6)
- 重启MySQL服务。
- 通过命令行进入MySQL的BIN目录,输入“mysql -u root -p”(不输入密码),回车即可进入数据库。(WIN7默认安装,BIN目录为:C:\Program Files\MySQL\MySQL Server 5.6\bin)
- 执行“use mysql;”,使用mysql数据库。
- 执行“update user set password=PASSWORD("123456") where user='root';”(修改root的密码)
- 打开MySQL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。
- 重启MySQL服务。
- 在命令行中输入“mysql -u root -p 123456”,即可成功连接数据库。
完成以上步骤,MyEclipse也可成功连接MySQL了。
---------------------------以上针对上面那种方法行不通的情况下----------------------------------
1、关闭MySQL服务
2、新建文本文件 命名任意 如mysql.txt 放在 MySQL安装文件夹下 如 C:MYSQL\mysql.txt
3、文件内容为 set authentiction_string for 'root'@'localhost' = password('newPassword');
3、打开dos系统 打开到安装的bin目录下面 执行mysqld -nt --init-file=C:MYSQL\mysql.txt
4、执行完之后,控制台打开MySQL服务 net start mysql ,提示服务器启动成功;
5、删除mysql.txt文件,另打开一个dos控制台,输入mysql --uroot -p 回车,然后输入上面修改的密码;回车之后就进入mysql>编辑框了;
6、\q退出;
以上的就是该报错本人在网上总结后的解决方法。欢迎采纳。