为什么我的嵌入式H2程序写入.mv.db文件

我遵循了h2数据库网站上的快速入门指南,在表中创建了一个新数据库并插入了一些数据。该应用程序运行流畅,可以毫无问题地读写数据库。

快速入门H2

  • 将h2 * .jar添加到类路径(H2没有任何依赖关系)
  • 使用JDBC驱动程序类:org.h2.Driver
  • 数据库URL jdbc:h2:〜/ test在用户主目录中打开数据库测试
  • 自动创建一个新的数据库

现在,我想使用Web前端h2控制台查看数据,但是每次尝试打开数据库时,它只会创建一个新数据库。

经过长时间的搜索,我注意到使用h2嵌入式版本的Java-App会写入一个名为“ .mv.db”的文件,而Web前端会创建一个名为“

.h2.db”的文件(对于我)

同样,当我的应用程序写入数据库时​​,它使用了极大量的空间(对于约600个整数值,使用80MB的空间)

如何为嵌入式数据库使用“ .h2.db”扩展名?

回答:

自版本1.4.177 Beta(2014-04-12)起,此功能现已自动启用。

您可以通过将;MV_STORE=FALSE和添加;MVCC=FALSE到数据库URL 来禁用它

默认情况下,MV_STORE选项处于启用状态,因此它正在使用新的MVStore存储。MVCC设置默认情况下设置为与MV_STORE设置相同的值,因此默认情况下也会启用。对于测试,可以通过在数据库URL上附加“;

MV_STORE = FALSE”和/或“; MVCC = FALSE”来禁用这两个设置。

http://www.h2database.com/html/changelog.html

您应该告诉我们您使用的H2的确切版本。

以上是 为什么我的嵌入式H2程序写入.mv.db文件 的全部内容, 来源链接: utcz.com/qa/397728.html

回到顶部