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

如何在 Spring Boot 中启用 H2 数据库服务器模式

如何在 Spring Boot 中启用 H2 数据库服务器模式

浮云间 2022-10-20 17:29:16
我正在使用带有使用 Spring Boot 的文件的 H2 数据库。在我的 application.properties 中,我有这个条目:spring.datasource.url=jdbc:h2:file:c:/Testprojekte/spring-boot-h2-db但是现在我希望能够在运行应用程序时查看数据库,目前这是不可能的,因为我需要让数据库在服务器模式下运行才能这样做。在文档中,我发现我必须将 AUTO_SERVER=TRUE 添加到 URL 但这并不能解决问题。那么,我需要改变什么才能同时从不同的进程连接到该数据库?谢谢你的帮助!托尔斯滕
查看完整描述

2 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

您可以将 H2 TCP 服务器作为 bean 启动:


<dependency>

    <groupId>com.h2database</groupId>

    <artifactId>h2</artifactId>

    <!-- <scope>runtime</scope> -->

</dependency>

@SpringBootApplication

public class Application {


    public static void main(String[] args) {

        SpringApplication.run(Application.class, args);

    }


    @Bean(initMethod = "start", destroyMethod = "stop")

    public Server h2Server() throws SQLException {

        return Server.createTcpServer("-tcp", "-tcpAllowOthers", "-tcpPort", "9092");

    }

}

然后使用以下参数(密码 - 空)从您的 IDE 连接到它:


url: jdbc:h2:tcp://localhost:9092/mem:testdb

user: sa

更多信息在这里这里



查看完整回答
反对 回复 2022-10-20
?
翻阅古今

TA贡献1780条经验 获得超5个赞

您可以使用浏览器中的 Web 界面启用 h2 Web 控制台以访问内存或文件数据库中的 h2。

因此添加 application.properties 行:

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

之后重新启动您的 Spring Boot 应用程序并检查http://localhost:8080/h2-console您的浏览器。


查看完整回答
反对 回复 2022-10-20
  • 2 回答
  • 0 关注
  • 185 浏览

添加回答

举报

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