白日梦想jun
2018-04-05 10:39
采纳率: 58.7%
浏览 1.5k

SSH项目中,连接mysql5.7数据库,权限不够

报错异常:
ERROR [http-nio-8080-exec-1] - Cannot create PoolableConnectionFactory (Access denied for user 'root'@'localhost' (using password: YES))

1.jdbc.properties中:

 proxool.maxConnCount=5
proxool.minConnCount=2
proxool.statistics=1m,15m,1h,1d
proxool.simultaneousBuildThrottle=5
proxool.trace=false
proxool.verbose=false
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssh_employee
jdbc.username=root
jdbc.password=root

2.datasource中:

    <bean id="dataSource"
        class="org.apache.commons.dbcp.BasicDataSource">
        <property name="url" value="${jdbc.url}"></property>
        <property name="username" value="${jdbc.username}"></property>
        <property name="password" value="${jdbc.password}"></property>
        <property name="driverClassName" value="${jdbc.driverClassName}"></property>

        <property name="maxActive"> <value>100</value></property>
        <property name="maxIdle"> <value>30</value> </property>
        <property name="maxWait"> <value>10000</value> </property>
    </bean>

3.数据库中用户和密码都是root,没有问题。

4.对root用户也都授予了权限,但是仍旧是这个问题。
控制台中是这样的报错:
图片说明

页面报错是这样的:
图片说明

4.另外 mysql5.7中的 my-default.init文件里面并没有密码之类的设置
图片说明

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

13条回答 默认 最新

  • xcgh 2018-04-06 05:19
    已采纳

    jdbc:mysql://localhost:3306/ssh_employee?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false,注意5.7增加ssl,另外百度了一下你的异常,估计是配置信息问题,你好好核对一下

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 小猴子的技术笔记 2018-04-05 13:46

    你是不是没有相应的jar包?还是密码没有写正确?

    评论
    解决 无用
    打赏 举报
  • 陌上君子人如玉 2018-04-05 14:27

    你的MySQL数据库安装有没有错误

    评论
    解决 无用
    打赏 举报
  • qq_35324157 2018-04-05 14:43

    这并不是权限问题 你相关的环境没有配置好。 看你使用的应该没有涉及到权限 你重新检查一下开发环境

    评论
    解决 无用
    打赏 举报
  • jxyhandsome 2018-04-06 02:09

    这应该是配置的问题,在重新检查一遍

    评论
    解决 无用
    打赏 举报
  • qq_14983423 2018-04-06 03:08

    这个问题是因为数据库连接配置时,密码有问题,给数据库设置一个密码,然后在重新改一下连接配置文件即可解决

    评论
    解决 无用
    打赏 举报
  • 木已成林 2018-04-06 03:55

    远程链接的话都是需要密码的

    评论
    解决 无用
    打赏 举报
  • 2进制 2018-04-06 04:44

    应该是MySQL配置文件里的密码没有修改,密码不一致

    评论
    解决 无用
    打赏 举报
  • weixin_40246296 2018-04-06 06:17

    版本的不兼容造成的

    评论
    解决 无用
    打赏 举报
  • feng_870906 2018-04-06 08:17

    权限受限。需要添加用户名为root,然后host为localhost,同时分配相应的权限即可访问。

    评论
    解决 无用
    打赏 举报
  • gebilaowang__ 2018-04-06 12:07
    <property name="dataSource" ref="dataSource"/>  <!-- 加载连接池 -->看看工厂声明里这个写了没
    
    评论
    解决 无用
    打赏 举报
  • gebilaowang__ 2018-04-06 12:07

    用户名和密码没问题的话你看看你的工厂声明时是不是少写了一个配置
    <!-- 加载连接池 -->
    如果不写,连接池是不加载的,

    如果你换成配置文件写了,开头的时候也要加一个配置

    <context:property-placeholder location="classpath:db.properties"/>
    你写好代码不加载,是识别不到的
    
    评论
    解决 无用
    打赏 举报
  • guokeewater 2018-04-16 07:29

    是没有mysql 链接的jar包吧

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题