war包连接mysql_Web项目打成war包部署到tomcat时报MySQL Access denied for user ''root''@''localhost'' (using passwor...

当使用war包部署到Tomcat服务器时,遇到MySQL Access denied错误。问题根源在于root账户远程访问权限受限。可以通过修改my.ini文件、重启MysqL服务并更新root用户的密码来解决。此外,注意-p和密码必须连写,避免混淆导致登录失败。
摘要由CSDN通过智能技术生成

Web项目使用使用root账号root密码进行部署,通过Eclipse加载到Tomcat服务器可以发布成功,打成war包放到tomcat的webapps目录无法发布成功,报错:

4f8dda6f39f7fabdc86656d2f58500b2.png

jdbc.properties涉及MysqL配置:

10eba5a91742f5da012766c7a9dc18d0.png

错误很明显,与MysqL密码有关,但是两种方式部署项目使用的jdbc.properties配置文件是一样的。所以肯定不是密码不对引起的,只好找度娘,O(∩_∩)O哈哈~。

网上大部分帖通过运行MysqL -u root -p命令登录时也会报这个错误,所以,我就尝试这种方法登录下,看是否存在同样的问题。

a420675f8d6458a6e48dfdec7a245ae1.png

经查资料原因是root帐户默认不开放远程访问权限,所以需要修改一下相关权限。

方法一:

1.打开MysqL目录下的my.ini文件,在文件的最后添加一行"skip-grant-tables",保存并关闭文件。(WIN7默认安装,my.ini在C:\ProgramData\MysqL\MysqL Server 5.6)

cbba940c80c5ff1d4d8e4c5303c97654.png

2. 重启MysqL服务。

3. 通过命令行进入MysqL的BIN目录,输入"MysqL -u root -p"(不输入密码),回车即可进入数据库。(WIN7默认安装,BIN目录为:C:\Program Files\MysqL\MysqL Server 5.6\bin)

4. 执行"use MysqL;",使用MysqL数据库。

5. 执行"update user set authentication_string=PASSWORD("admin") where user='root';"(修改root的密码)

6. 打开MysqL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。

前边的步骤,其实也可以直接通过MysqL客户端工具修改root密码.(如图)

424cba3b8b37cb7cbc5687c8f981473a.png

7. 重启MysqL服务。

8. 在命令行中输入"MysqL -u root -padmin",即可成功连接数据库。

完成以上步骤,修改jdbc.properties配置,Eclipse和war包方式都可以成功部署到tomcat服务器.问题终于解决。

附录方法二:

1. 管理员登陆系统,停止MysqL服务或者结束MysqLd-nt进程;

2. 进入命令行,来到MysqL的安装目录.假设安装目录为 d:\MysqL\,CMD进入命令行;

3. 运行 D:\Program Files\MysqL\MysqL Server 5.5\bin\MysqLd-nt --skip-grant-tables启动MysqL,关闭权限的检查;

4. 运行 D:\Program Files\MysqL\MysqL Server 5.5\bin\MysqLadmin -u root flush-privileges password "newpassword" 重设root密码;

5. 重新启动MysqL服务;

小插曲:

在解决问题当中,根据网上描述,通过MysqL -u root -p password方式访问MysqL,结果报如下错误:

cfb2e6bcd0aba8ac2026a03d54334879.png

但是奇怪的是这条命令我输进去死活都不对,它都会要求再输入一遍密码,然后返回"ERROR 1049 (42000): Unknown database '123456'"

这个错误提示很明显,我们-P后面的password代表的是数据库名称。但-p这个参数,p应该代表的是password。百度后发现,-p和密码是连在一起的。

MysqL -h localhost -u root -ppassword

-p和密码是连在一起的,赶紧一试,果然可以登陆!

90c6c6bd0ee803e352218f8df8ef7ae9.png

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值