为了账号安全,请及时绑定邮箱和手机立即绑定

SpringBoot 集成H2数据库无法进行本地连接?

SpringBoot 集成H2数据库无法进行本地连接?

HUX布斯 2019-01-18 03:45:46
最近在尝试使用SpringBoot + JPA +H2 数据库,在application.properties中,做了数据库连接配置 spring.datasource.url=jdbc:h2:tcp://localhost/D:/H2DataBase/DB/test;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE 但是在启动了程序后,控制台输出连接到了内存模式,输出结果如下: Starting embedded database: url='jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=false', username='sa' 请问为什么会出现这种情况,是否数据库连接URL有误?如何解决?谢谢大家了。
查看完整描述

1 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

因为你用了tcp模式并且加了auto_server=true参数,所以springboot自动以mem模式启动了h2,但这不是h2常用的的模式,h2是嵌入式数据库,通常应该用file或mem模式,所以jdbc的url,应该是:

spring.datasource.url=jdbc:h2:file:yourdbname

某些书或网站推荐使用mem模式,而我认为file模式更好,这样开发调试时保存的数据才能在重启应用后得以保留,并且file模式也很稳定,没有什么问题。只是要记住生产环境绝不可使用h2,h2仅应该用于开发。

查看完整回答
反对 回复 2019-02-12
  • 1 回答
  • 0 关注
  • 497 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信