DruidDataSource数据源创建抛出“Your password has expired”

本文将解决DruidDataSource数据源创建抛出“Your password has expired”错误问题。

一直运行的很好的项目,突然今天不能运行,查看后台错误日志如下:

2019-10-29 21:07:01,631 [Druid-ConnectionPool-Create-632550973] ERROR [com.alibaba.druid.pool.DruidDataSource] - create connection SQLException, url: jdbc:mysql://localhost:3306/website?characterEncoding=UTF-8&useUnicode=true&useSSL=false, errorCode 1862, state HY000

java.sql.SQLException: Your password has expired. To log in you must change it using a client that supports expired passwords.

        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)

        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4187)

        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4119)

        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:927)

        at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1709)

        at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1252)

        at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2483)

        at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2516)

        at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2301)

        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)

        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)

        at sun.reflect.GeneratedConstructorAccessor37.newInstance(Unknown Source)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)

        at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

        at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)

        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)

        at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1558)

        at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1623)

        at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2468)

根据上面的错误日志,可以得知是创建 DruidDataSource 数据源失败,创建失败的原因是 MySQL 密码过期了,这就需要我们修改 MySQL 数据库密码。修改 MySQL 数据库密码如下:

SET PASSWORD FOR testuser = PASSWORD("123456");

testuser 指 mysql 数据库用户名。

学习从来无捷径,循序渐进登高峰。 —— 高永祚
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号