Web项目打成war包部署到tomcat时报MySQL Access denied for user 'root'@'localhost' (using password: YES)错误解决方案

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

jdbc.properties涉及Mysql配置:

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

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

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

解决方法:

方法一:

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

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密码.(如图)

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,结果报如下错误:

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

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

mysql -h localhost -u root -ppassword

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

如上总结有若有问题,欢迎大家指正,谢谢,希望能帮助到需要的小伙伴,O(∩_∩)O~

Web项目打成war包部署到tomcat时报MySQL Access denied for user 'root'@'localhost' (using password: YES)错误解决方案

原文地址:https://www.cnblogs.com/guanzhyan/p/8301893.html

时间: 2024-12-23 22:29:15

Web项目打成war包部署到tomcat时报MySQL Access denied for user 'root'@'localhost' (using password: YES)错误解决方案的相关文章

Web项目打成war包部署Tomcat时运行startup.bat直接闪退部署失败解决方案

即上篇通过将web项目打成war包部署到Tomcat服务器,解决mysql问题后,又出现了新问题,真是一波三折,所以将解决过程分享给大家,希望能帮助到小伙伴们~ 将打好的war包拷贝到Tomcat的webapps目录,然后在Tomcat的bin目录找到startup.bat批处理文件,直接双击执行,结果运行几秒后直接闪退,顿时有种不好的预感,在浏览器访问web项目,结果连localhost:8080都无法访问,web项目未发布成功,一脸懵逼~ 没有日志看不到为啥发布不成功额,想了想,可以稍微修改

将web项目打成war包部署在tomcat步骤

1.将自己的项目打成war包. 2.将打包好的war复制到${tomcat.home}/webapps项目下. 3.在${tomcat.hom}/conf目录下打开server.xml文件,找到Host节点,在Host节点下添加: <Context docBase="D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\Products.war" path="/Products" relo

关于JavaEE项目连接数据库提示 Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)的解决方案

最近这三天,都在解决如下的问题:我MyEclipse中的JavaEE工程,运行之后就提示Access denied for user 'root'@'localhost' (using password: YES),当我用一个Java文件连接MySQL数据库时,没有任何问题.于是我在网上找了一些解决方案: (1)让root给当前用户授予增删改查的权限:grant select,insert,update,delete on *.* to 用户名@"%" Identified by &q

SpringBoot之打成war包部署到Tomcat

正常情况下SpringBoot项目是以jar包的形式,正常情况下SpringBoot项目是以jar包的形式,并且SpringBoot是内嵌Tomcat服务器,所以每次重新启动都是用的新的Tomcat服务器.正因如此,也出现了一个问题:    上传到项目的文件,如果是保存在项目中的,那么重启过后文件就会丢失.比如我们上传了一个头像,重启项目后,这个头像就没了.而如果将文件保存在本地磁盘中的话,html中标签没办法获取(当然,企业项目中一般是有专门的图片服务器的).因此,我们才需要将SpringBo

Javaweb项目碰到的问题- Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)

出现未给localhost root用户授权,主要是项目中存在的多个xxx.properties,其中用户名为root的password的值不完全相同导致的,使用eclipse的search 功能找到所有的password进行修改,使其一致,删除项目重新添加,再运行即可. 菜单栏Search-Search打开如下页面,输入password,找到有password出现的地方,进行密码的修改. Javaweb项目碰到的问题- Access denied for user 'root'@'localh

idea把java web项目打成war包

地址链接:https://blog.csdn.net/weixin_30399055/article/details/94990015 1.新建artifacts 2.设置你的目录内容路径 3.找到项目web或webapp的路径 4.可以直接添加已经跑通的项目 5.配置完成点OK 6.编译打成war包 7.点击编译结束打完收工 8.找到你的输出位置就可看见war包了 原文地址:https://www.cnblogs.com/hcklqy/p/12048301.html

idea将web项目打成war包放在tomcat/webapps上运行

1.进入Project Structure 或者 file -> Project Structure 或者 快捷键ctrl+alt+shift+s 2.选中Artifacts 3.点加号,然后如图 4.war包的默认输出路径 5.点击+号 -> 选择Directory -> 选择web项目根路径 6.在/WEB-INF/classes目录下, 生成编译后的class文件 7.点击ok 8.点击[Build]->[BuildArtifacts]->[Build]菜单, 找到自己

异常类型:Myeclipse10将web项目打成war包时出现security alert:integrity check error

是在对MyEclipse中的web项目打包的时候出现这个异常类型的,点击下边图片的 WAR file(MyEclipse)就会弹出一个警告框然后会MyEclipse就自动关闭了. E security alert:integrity check error this product did not pass the myeclipse integrity check. this security check is a prerequisite for launch of myeclipse. p

记录一次SpringBoot打成war包部署到tomcat启动报错

启动时,报错信息如下: 28-Sep-2018 16:55:41.567 严重 [localhost-startStop-1] org.apache.catalina.core.StandardContext.startInternal Error during ServletContainerInitializer processing javax.servlet.ServletException: Failed to instantiate WebApplicationInitializer