Eclipse连接MySQL启动项目时报错,提示root用户在localhost被拒绝访问(使用密码:是),但Navicat可以正常连接该数据库。可能是项目配置中的用户名、密码或权限设置存在问题,需检查数据库连接参数及用户权限配置,确保与Navicat一致且账户具备相应访问权限。
1、 在MySQL安装目录中找到my.ini配置文件,使用文本编辑器打开后,在文件末尾添加一行skip-grant-tables,务必手动保存修改后再关闭文件。注意该文件通常位于隐藏路径下,如C:ProgramDataMySQLMySQL Server 5.7,需提前设置显示隐藏文件才能访问并编辑。
2、 重启MySQL服务,可通过命令或服务管理工具实现。
3、 通过命令提示符进入MySQL安装目录下的bin文件夹(通常位于C:Program FilesMySQLMySQL Server 5.7in),输入mysql -u root -p并按回车,不提供密码直接登录数据库系统。此方法适用于默认配置下以管理员身份访问本地MySQL服务。
4、 首先,运行use mysql;命令以切换到mysql数据库;接着,执行update mysql.user set authentication_string=password(123456) where user=root;语句,用于修改root用户的密码。需要注意的是,在新安装的MySQL 5.7版本中,原本存储密码的字段已由password更改为authentication_string,因此必须针对该字段进行更新操作,才能成功设置新密码。执行完毕后需刷新权限,确保更改生效。
5、 重新编辑my.ini文件,移除末尾添加的skip-grant-tables语句,保存并关闭文件,随后重启MySQL服务以应用更改。
6、 关闭并重启CMD,切换至MySQL的BIN目录,输入命令mysql -u root -p 123456,即可顺利连接数据库。
