micronaut 中的 H2 默认 jdbc url 是什么

What is the H2 default jdbc url in micronaut

我在 application.yml 中有以下数据源配置(Micronaut 默认设置):

datasources:
  default:
    url: jdbc:h2:mem:devDb;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
    driverClassName: org.h2.Driver
    username: 'user'
    password: 'user'
    schema-generate: CREATE_DROP
    dialect: H2
jpa.default.properties.hibernate.hbm2ddl.auto: update

Hikari 记录如下:

21:09:01.750 [main] DEBUG com.zaxxer.hikari.HikariConfig - jdbcUrl.........................jdbc:h2:mem:devDb;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE

这似乎是正确的。我尝试连接到数据库,并成功。悬停 SHOW TABLES returns 什么都没有。当我将 IFEXISTS=true 添加到 url 时,出现以下错误:

[90146][90146] Database "mem:devDb" not found, and IFEXISTS=true, so we cant auto-create it [90146-200].

该应用程序正在运行 - 我可以插入和获取数据,但我不知道数据位于何处,也不知道如何在应用程序外访问它。

What is the H2 default jdbc url in micronaut

对于 hibernate-jpa 功能,默认 url 为 jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE

...but I don't have a clue where the data is located, and how to access it outside the app.

数据位于内存中,只能由创建内存数据库的应用程序访问。如果您希望任何其他进程访问数据,您使用内存数据库的应用程序将需要提供对数据的访问(例如通过 API)。

这只是一个限制,因为您使用的是内存数据库。如果您需要多个进程连接到数据库,使用内存数据库可能不是最佳解决方案。