我使用spring连接到同一台机器上的mysql数据库,并从api中提取数据并存储。它昨天正常工作,我决定让它继续运行,看看我是否遇到了任何问题。据我所知,它工作得很好,但我忘了插上笔记本电脑的电源,它就死机了。在重新启动机器后,我可以通过命令行连接到数据库,但我的应用程序无法使用相同的用户id和密码进行连接。
我再次尝试按照spring.io指南连接到mysql,并尝试修改应用程序属性以使用127.0.0.1。
我还验证了凭据在命令行上是否有效,并允许我连接到mysql数据库
application.properties
spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=jdbc:mysql://localhost:3306/POE?autoReconnect=true&useSSL=false
spring.datasource.username=user
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.profiles.default=production
spring.profiles.active=productionpom.xml - mysql连接器...
<!-- Use MySQL Connector-J -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.3</version>
</dependency>..。
我可以展示更多的实际代码,但它主要是从我自己的实体的spring.io指南中摘录出来的。但如果我没有建立连接,我认为这不是一个问题
它运行得很好,只是记录了我对数据库所做的所有写操作,但是现在我得到了这个错误
2019-07-09 14:57:45.839 ERROR 2654 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.发布于 2019-07-10 03:27:49
增加数据库的超时时间。如果MySql处于空闲状态超过8小时,则默认情况下将关闭。
发布于 2019-07-10 04:22:25
spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=jdbc:mysql://localhost:3306/POE?autoReconnect=true&useSSL=false&useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=user
spring.datasource.password=admin
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.profiles.default=production
spring.profiles.active=production这是一个时区问题,隐藏在我得到的错误的堆栈跟踪中。将我的应用程序属性更改为此属性可修复此问题。
https://stackoverflow.com/questions/56959292
复制相似问题