R2dbc无法使用tcp与h2数据库一起使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R2dbc无法使用tcp与h2数据库一起使用相关的知识,希望对你有一定的参考价值。

我尝试使用docker容器oscarfonts / h2将h2与r2dbc一起使用。默认情况下,使用此容器时,我们必须使用tcp协议,

[当我尝试将其与r2dbc一起使用时。我收到以下明确的错误消息:

尝试获取数据库连接到期类 java.lang.IllegalArgumentException:协议选项tcp不支持 (文件,内存)

doc r2dbc h2说它应该与tcp协议一起使用。是吗?

相应地使用spring boot 2.3.0.RELEASE和r2dbc版本。

答案

R2DBC H2是围绕H2数据库的一个小型包装。这意味着整个基础架构都使用与JDBC相同的H2实现,但都受阻。

因此,在使用R2DBC时,不应通过TCP使用H2,而应使用具有适当的非阻塞I / O实现的其他数据库(mysql,MariaDB,Postgres,SQL Server)。

以上是关于R2dbc无法使用tcp与h2数据库一起使用的主要内容,如果未能解决你的问题,请参考以下文章

无法将 setArray JDBC(整数)与 H2 数据库一起使用

使用 inMemory 数据库时出现 R2dbc H2 问题

无法使用 R2DBC Postgresql WebFlux 获得响应

sklearn:无法使 OneHotEncoder 与 Pipeline 一起使用

无法使 python split() 与 £ [重复] 一起使用

JOOQ r2dbc 获取数据:无法解码具有 OID 51968 的 java.lang.String 类型的值