You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot不输出schema.sql与data.sql中SQL语句的日志问题

Spring Boot启动时schema.sql/data.sql日志未输出的解决办法

可能的原因及解决方案

1. 确认脚本文件位置

schema.sql和data.sql必须放在src/main/resources根目录下,若使用自定义路径,需在application.properties中显式指定:

spring.sql.init.schema-locations=classpath:custom/schema.sql
spring.sql.init.data-locations=classpath:custom/data.sql

2. 强制开启SQL初始化模式

默认情况下Spring Boot仅在数据库为空时执行初始化脚本,添加以下配置可强制每次启动都执行脚本:

spring.sql.init.mode=always

3. 确保日志级别配置生效

检查日志级别配置是否正确,注意DEBUG的大小写(Spring Boot兼容大小写,但规范写法为大写):

logging.level.springframework.jdbc.datasource.init.ScriptUtils=DEBUG

同时确认没有其他日志配置文件(如logback.xml)覆盖该级别设置。

4. 验证脚本是否实际执行

添加H2控制台配置,启动后手动连接数据库查看表结构和数据,确认脚本是否真的执行:

spring.h2.console.enabled=true
spring.h2.console.path=/h2-console

访问http://localhost:8080/h2-console,使用默认连接参数(jdbc:h2:mem:testdb)登录查看。

5. 排查脚本执行错误

若脚本存在语法错误,可能导致执行中断且无日志输出,添加以下配置允许错误继续并输出相关日志:

spring.sql.init.continue-on-error=true

内容的提问来源于stack exchange,提问作者dark_prince

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 23:31:36