对无法连接到MySQL

时间:2016-12-21 10:20:57

标签: mysql hibernate tomcat spring-boot

我将MySQL连接器和数据库详细信息构建到应用程序中,并且在Tomcat中运行时仍然无法连接到MySQL。我的应用程序完全是开源的,所有源代码都在网上:https://github.com/clickcell/AutomationStatisticsPortal

The application.class

The gradle build file

与我的存储库不同的application.properties文件是:

spring.datasource.url=jdbc:mysql://localhost/springboot
spring.datasource.username=newuser
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

我已尝试设置MySQL 5.5服务器以匹配application.properties

每次症状如下:

Web应用程序正在运行,但没有数据库连接,也没有显示数据。

我使用Tomcat8和MySQL 5.5。我已经启用查询日志并使用tail -f监视它,当我直接向他们在日志中显示的服务器运行查询时,但是当我在tomcat管理器中重新启动我的应用程序时,该日志中没有任何内容显示。

在tomcat日志中,我得到以下内容:

21-Dec-2016 10:19:16.693 INFO [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.reload Reloading Context with name [/AutomationStatisticsPortal] has started
21-Dec-2016 10:19:17.339 WARNING [http-nio-8080-exec-6] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [AutomationStatisticsPortal] registered the JDBC driver [org.h2.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
21-Dec-2016 10:19:19.026 INFO [http-nio-8080-exec-6] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
21-Dec-2016 10:19:26.839 INFO [http-nio-8080-exec-6] org.apache.catalina.core.StandardContext.reload Reloading Context with name [/AutomationStatisticsPortal] is completed

看起来它正在注册错误的数据库驱动程序,但我不知道为什么给出我的配置。

1 个答案:

答案 0 :(得分:1)

使用H2时会生成您显示的日志。

我克隆了您的存储库并在本地进行了测试,当我使用MySQL参数更新src/main/resources/application.properties时,它可以工作。 你应该删除root中的另一个,这是不明确的。

您还可以使用此application.properties文件替换src/main/resources中的application.yml文件:

spring:
    datasource:
        type: com.zaxxer.hikari.HikariDataSource
        url: jdbc:mysql://localhost/springboot
        username: newuser
        password: password
    jpa:
      database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
      database: MYSQL
      show-sql: true

在这种情况下,添加Hikary依赖项,或使用其他数据源类型。