Access denied for user(这个几乎让我怀疑人生的异常)

标签: 异常 access
11388人阅读 评论(7) 收藏 举报
分类:

昨天一时兴起,打算根据自己的某些想法,业余时间写一个简单的项目,用以巩固那些重要的知识,以及练手一些即将学习的技术。
然而才一开始,便有一盆冷水迎面而来,在搭建整个框架环境的时候竟然就被卡住了!主要是两个问题,第一个还好说,可是第二个,让我抓狂,让我差点怀疑人生!
最终结果是,一个是因为单词拼写错误,一个是因为多余的空格!
拼写错误害死人,空格害死人啊!
这个跟头真是一摔再摔,前赴后继!

这个项目我打算依旧以常规的spring+spring+spring mvc的整体架构来进行,于是便根据自己之前写的一篇框架搭建开始动手:http://blog.csdn.net/tuzongxun/article/details/51153773?locationNum=2&fps=1
原本,对于这个整体框架搭建我是信心满满的,因为之前认真的弄过好久,对于上边这篇文章所写的内容也是相当自信。
虽然我写的那些文章不一定有深度,但是除开一些理论性的,其他都绝对是自己亲自尝试过的,实用性和可行性我敢保证。

然而就在我确认搭建好,该修改的配置也都一一修改完以后,一启动tomcat居然报错了:

org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from relative location [spring-MybatisConfig.xml]
Offending resource: class path resource [spring.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from URL [file:/D:/eclipseWorkspace1/.metadata/.plugins/org.eclipse.wst.server.core/tmp2/webapps/myBlog/WEB-INF/classes/spring-MybatisConfig.xml]; nested exception is java.io.FileNotFoundException: D:\eclipseWorkspace1\.metadata\.plugins\org.eclipse.wst.server.core\tmp2\webapps\myBlog\WEB-INF\classes\spring-MybatisConfig.xml (系统找不到指定的文件。)
    at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:70)
    at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
    at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76)

好吧,这个提示太直白,系统找不到指定的文件!
根据以往的经验,我略一思索变想到多半是单词拼写错误,于是自然而然的自看了一眼文件名,果不其然,我的这个文件是这样的:
这里写图片描述
原来是spring打成了srping。

既然找到了问题,解决起来自然不是问题,我一直觉得问题不可怕,可怕的是找不到问题在哪儿!

然而,就在我以为大功告成的时候,再一启动tomcat,居然还是报错了,这次的错是:

十一月 29, 2016 10:29:10 上午 com.alibaba.druid.pool.DruidDataSource error
严重: init datasource error
java.sql.SQLException: Access denied for user 'tzx  '@'tuzongxun' (using password: YES)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:996)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3887)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3823)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:870)
    at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1659)
    at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1206)

看到这个错,我就有点不淡定了,因为这个错也是似曾相识的啊,如果我没记错,那就是密码错误的问题。
但是!我的密码分明没有问题!config.properties文件相关的内容如下:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.0.7:3306/myblog?useUnicode=true&characterEncoding=utf-8
jdbc.username=tzx  
useUnicode=true&characterEncoding=utf-8  
jdbc.password=123456  

为了验证究竟是不是密码问题,我还特意写了一个jdbc来连接:

public static void mysqlTest() {
        String driver = "com.mysql.jdbc.Driver";// 数据库驱动
        String url = "jdbc:mysql://192.168.0.7:3306/myblog";// **指的是数据库名称
        String username = "tuzongxun";// 数据库用户名
        String password = "123456";// 数据库密码
        Connection conn = null;
        Statement stat = null;
        ResultSet rs = null;
        try {
            Class.forName(driver);// 加载数据库驱动
            conn = DriverManager.getConnection(url, username, password);// 连接Connection对象
            stat = conn.createStatement();// 创建Statement对象
            String sql = "select * from emlog_ad";
            rs = stat.executeQuery(sql);// 执行sql语句返回结果集
            while (rs.next()) {
                System.out.println(rs.getInt("id"));
                System.out.println(rs.getInt("status"));
                System.out.println(rs.getInt("position"));
                System.out.println(rs.getString("title"));
                System.out.println(rs.getInt("weight"));
                System.out.println(rs.getString("content"));
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

结果自然是正常连接的。
这下我就蒙圈了:用户名和密码一模一样,框架和之前的也几乎没有差别,难道是见鬼了?难道是我之前的文章有问题么?
可是,我每次发出去的,分明都是一而再再而三的验证过的,不该如此啊!
万般无奈之下,我清了tomcat缓存,我清了eclispe缓存,甚至我重启了eclipse,我重启了电脑。
然而,问题他依旧在那里静静的看着我,仿佛在说“啊哈,你找不到我,你找不到我!”

这下我有点从蒙圈进入抓狂的状态了,根据经验实在无法定位问题所在了,只好上网搜索。
经过一顿百度,答案是如此的千篇一律,不是说用户名密码错误的问题,就是说需要新建用户。
好吧,不管怎样,先试试再说。
于是,我重新创建了一个用户,重新启动了mysql。甚至由于之前写那个框架搭建时用的是mysql5.5,而我现在用的是mysql5.6,所以我又弄了个mysql5.5。
结果呢。。。有点不想说话!

该试的都试了,不该试的我也试了,怀疑人生模式正式开启。。。
于是,我开始漫无目的的一行行代码、一个个字符的开始了光标的漫长旅行。
令我意外的是,山重水复疑无路,柳暗花明又一村,问题竟然就这样突如其来的被窝寻到了踪迹!
在光标一个字符一个字符的移动中,我发现我的config.properties文件居然是这样的:
这里写图片描述
这里写图片描述
明眼人大概已经看到了问题所在,正是我的用户名和密码后边多出了两个空格,当我把这两个空格干掉之后,再次启动tomcat,那个异常终于乖乖的溜之大吉了!

如此没有技术含量的两个错,我已犯了多次,粗心大意犯的错,空格字符太坑人,说多了都是泪啊!

查看评论

解决mysql"Access denied for user'root'@'IP地址'"问题

原文地址:http://www.2cto.com/database/201211/167045.html 解决mysql"Access denied for user'root'@'IP地址'"问...
  • u012888920
  • u012888920
  • 2015-11-07 11:26:20
  • 32380

完美解决Mysql的Access denied for user 'root'@'%'问题

完美解决Mysql的Access denied for user 'root'@'%的'问题      最近在分配mysql权限时出错,mysql版本5.6,造成mysql在重新分配权限提示"Acce...
  • nicajonh
  • nicajonh
  • 2016-08-25 09:36:32
  • 17294

MySQL 创建新用户后 Access denied for user 'x'@'localhost' 无法登录

MySQL新建用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES) 的解决方法: 请使用roo...
  • Sky786905664
  • Sky786905664
  • 2016-07-26 17:29:05
  • 5273

解决mysql“Access denied for user 'root'@'localhost'”

# mysql -uroot -pEnter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using...
  • lyflower
  • lyflower
  • 2011-01-14 00:23:00
  • 222193

Mac使用mysql中出现ERROR 1045: Access denied for user: 'root@localhost' 以及密码过期解决方法

文章链接 昨天学数据库,安装的时候完全没看到设置密码的地方… 然后登陆不进去,一直出现ERROR 1045: Access denied for user: ‘root@localhost’报错 ...
  • say_c_box
  • say_c_box
  • 2017-06-02 10:50:14
  • 7509

关于问题 mysql"Access denied for user root@localhost" 的解决办法

1.问题来源:   最近由LAMP转到LNMP,初次使用LNMP,为了快速入门,直接安装LNMP组合安装包。   当启动mysql数据库时,出现如下的错误信息    2.问题分析   错误信息的大意...
  • hgq_csdn
  • hgq_csdn
  • 2016-12-18 17:36:39
  • 19312

Access denied for user ''@'localhost' (using password: YES)

Access denied for user ''@'localhost' (using password: YES)运行遇见了这个bug,弄了很久,看网上的解决方向都是说用户名权限不够,要开通权限什...
  • G_xixihaha
  • G_xixihaha
  • 2016-10-08 12:21:02
  • 1067

Access denied for user 'xy'@'localhost' (using password: YES)解决办法

今天配置sping+spingmvc+mybatis时,在配置到druid数据源的时候报了这个错误,上网查了一下 总结一下原因:大多数都是 可能是连接数据库的用户名或者密码错误,但是我的用...
  • xinghuo0007
  • xinghuo0007
  • 2016-11-02 10:31:01
  • 2520

ERROR 1045 (28000): Access denied for user...错误的解决

刚刚安装好了mysql数据库,root用户登录没有问题,但是在创建了新的数据库后却无法登录,报“ERROR 1045 (28000): Access denied for user”这样的错误,下面对...
  • jiaping0424
  • jiaping0424
  • 2016-04-26 19:19:57
  • 16399

mysql错误1044-Access denied for user 'root'@'localhost' to database

今天运行mysql脚本是老是报错,经过一番追究,发现事件创建失败了, 1044-Access denied for user 'root'@'localhost' to database 错误提...
  • rain_bridge
  • rain_bridge
  • 2016-10-26 22:05:56
  • 11145
    公告栏
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 89万+
    积分: 1万+
    排名: 1864