问题标签 [h2db]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1041 浏览

ignite - H2 数据库 DbException - 不支持的连接设置“MULTI_THREADED”

最近,我将ignite版本升级到了2.10.0。这也需要升级 H2 数据库,因为 H2 对 ignite 有硬依赖。所以我将 H2 数据库更新为 1.4.200。

从那时起,我的测试用例就失败了。

错误日志:-

我使用 maven 作为我的构建工具。我的 Java 版本是 jdk11.0.9_12。

编辑:

根据H2 版本 1.4.200 发行说明,删除了 MULTI_THREADED 设置,MVStore 引擎始终是多线程的,PageStore 引擎始终是单线程的。

但我没有在我的代码中的任何地方添加 MULTI_THREADED 设置。

编辑:

将 H2 版本更改为 1.4.197 会给出新的异常,如下所示:-

0 投票
1 回答
42 浏览

spring - JdbcSQLSyntaxErrorException:找不到序列“SYSTEM_SEQUENCE_*”

我正在尝试使用 H2 恢复脚本(H2 v.1.4.199,以及 .197 和 .200)恢复似乎已损坏的 H2 数据库,如下所示:

出现以下错误:

“VECTORS_DATA”表对应于 Spring 项目中使用的 Java 实体:

H2 代码状态表明正在尝试访问一个不存在的序列。我不确定如何继续,尽管我尝试使用多个版本来恢复它,但没有帮助。有没有办法更有效地调试恢复过程?因为我认为实体本身没有问题。谢谢!

0 投票
0 回答
288 浏览

java - 更新 h2 数据库的用户名和密码并恢复早期备份

我的 H2 数据库的当前凭据非常薄弱,我被要求将其更改为复杂的。已经使用我的旧凭据创建了很多备份(*.db 文件)。当我尝试在我的 Java 应用程序中使用新凭据检索备份时,我收到错误消息,

当我放回旧凭据时,一切正常。我可以通过哪些可能的方式读取使用旧凭据创建的备份?

我已经在这里提到了一个类似的问题:how to reslove wrong username and password error in h2 database and springboot?

0 投票
1 回答
82 浏览

database - Keycloak H2 数据库中的空会话表

我将 Keycloak 15.0.2 与默认的 H2 数据库一起使用。我已经登录了几个用户,并且可以在 Keycloak 会话选项卡中获得活动会话,但在 DB 中,我看不到与 USER_SESSION 和 CLIENT_SESSION 等会话相关的所有表中的任何条目。

有人对我如何获得这些条目有任何建议吗?

提前致谢。

0 投票
1 回答
36 浏览

java - h2db - 无法连接不同的计算机

此类通过 h2db 连接到数据库。

错误发生在这里:

我在服务器模式下有 h2db。用户和密码在构造函数中给出。该代码在我的计算机上运行良好,当我导出到另一台计算机并运行它时,出现此错误:

0 投票
0 回答
116 浏览

h2 - org.h2.jdbc.JdbcSQLNonTransientException:IO 异常:空 [90028-200]

我的 h2db 版本是 h2-1.4.200。数据库前几次启动,重启数据库却无法连接!问题是:

IO 异常:空 [90028-200] 90028/90028(帮助)org.h2.jdbc.JdbcSQLNonTransientException:IO 异常:空 [90028-200]

非常感谢你的帮助!!!!!

0 投票
0 回答
29 浏览

aws-lambda - 使用 AWS Lambda 在 AWS EFS 中的 H2 DB 多极连接

我一直在努力为 H2 数据库的以下用例寻找解决方案

  1. 我有一个 H2 数据库文件

  2. 此文件已保存在 AWS EFS 中

  3. 这是因为两个 lambda 函数可以同时访问这个 DB 文件。一个 lambda 读取文件和对该文件的其他更新

  4. 我面临以下问题 -

  • 第一个 lambda 查询 H2 DB 文件并为其创建一个锁。锁在 EFS 文件系统中
  • 当第二个 lambda 尝试更新同一个 H2 DB 文件时,它会在该文件上找到一个锁,并显示“原因:java.lang.IllegalStateException:文件已锁定:nio:/file.mv.db [1.4.192/ 7]"

我在互联网上搜索了很多,这个链接H2 Database multiple connections与我的用例相关

我使用了相同的方法,并在下面使用 AUTO_SERVER=TRUE 的连接 URL。

但我仍然面临同样的问题。

有人可以帮忙吗?

以下是我尝试过的连接 URL:

0 投票
0 回答
74 浏览

spring-boot - 在 h2 数据库中保存大文件

我最近将springboot项目中的h2数据库更新为2.1.210。

这引发了一些问题,其中大部分问题我都能自己解决。我无法解决的问题是在数据库中保存大文件。

当我尝试上传 ~3,5MB 文件时,出现以下错误:

在 h2 1.4.200 上完美运行的注释看起来像这样

我不知道它是否相关,但我在使用时也会出错

这里的错误是

因为每当我使用“文本”时,它都会被翻译成varchar(2147483647)

0 投票
0 回答
18 浏览

java - 如何以我不知道表数据的表格式迭代jsp中的json数组对象?

我正在从 JSP 页面传递 h2 数据库文件路径。然后我编写了一些逻辑来使用 JSON 数组对象获取表名,并且我成功地显示在 JSP 页面上,其中我不知道数据库文件路径中存在多少表。我得到了 JSP 上的所有表格列表。现在我想获取该表的所有数据,例如总列和行。但是我在控制台中获取了所有数据,但我无法在 JSP 上迭代该数据,因为在迭代和创建表时,我不知道该特定表中存在多少列。

如果想以表格格式迭代该数据,而我不知道该表格中的列和行是如何存在的,那么我将如何编写代码?............