【发布时间】:2018-11-28 15:19:47
【问题描述】:
我正在尝试针对在容器中运行的 MySQL 数据库为 Spring Boot 应用程序执行一些数据库初始化。
在身份验证过程中,我收到错误“找不到表”。我检查了数据库,确实没有创建任何表。
数据库属性中是否缺少某些内容?
spring.datasource.url = jdbc:mysql://172.17.0.2:3306/schema
spring.datasource.username = user
spring.datasource.password = password
spring.datasource.testWhileIdle = true
spring.datasource.validationQuery = SELECT 1
spring.jpa.show-sql = true
spring.jpa.hibernate.ddl-auto = create-drop
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
spring.data.rest.basePath=/
spring.datasource.data = classpath:/data.sql
spring.datasource.schema = classpath:/schema.sql
总而言之,只要我从 mysql 命令行创建 DDL,JDBC 设置就可以正常工作。所以它只是在启动时不执行 data.sql 和 schema.sql。 我需要一些额外的 mysql 属性吗?
【问题讨论】:
-
你定义你的spring.datasource.driverclassname了吗?
-
你在用
spring-data吗? -
我刚刚尝试添加驱动程序类名,但没有改变。我也在使用“spring-boot-starter-data-jpa”。有区别吗?
-
您确定您提供了正确的 sql 文件路径吗?也许您可以尝试将您的 sql 文件添加到资源文件夹中并删除
spring.datasource.data = classpath:/data.sql spring.datasource.schema = classpath:/schema.sql -
@Carla - 你能解决这个问题吗?
标签: spring spring-boot