Database 重复删除和加载相同数据后,H2 db大小持续增加

Database 重复删除和加载相同数据后,H2 db大小持续增加,database,h2,Database,H2,我有一个名为temp.H2.db的H2 db,它由两个应用程序访问。第一个通过嵌入式模式访问,第二个通过服务器模式访问。通过第二个应用程序,我将数据加载到数据库中。但是,即使我删除以前的值并重复加载相同的数据,db大小也会增加。从大约200mb增加到大约2Gb。即使我删除所有表并加载一组新的数据(与前一组数据的大小几乎相同),这种情况也会发生。这是虫子吗 我尝试了LOG\u SIZE\u LIMIT=32,但没有效果 这可能是由于未结交易造成的吗?我们如何确定存在哪些未结交易?我做了两次db恢复

我有一个名为
temp.H2.db
的H2 db,它由两个应用程序访问。第一个通过嵌入式模式访问,第二个通过服务器模式访问。通过第二个应用程序,我将数据加载到数据库中。但是,即使我删除以前的值并重复加载相同的数据,db大小也会增加。从大约200mb增加到大约2Gb。即使我删除所有表并加载一组新的数据(与前一组数据的大小几乎相同),这种情况也会发生。这是虫子吗

我尝试了
LOG\u SIZE\u LIMIT=32
,但没有效果

这可能是由于未结交易造成的吗?我们如何确定存在哪些未结交易?我做了两次db恢复,它给了我一些统计数据。我如何解释这些:

---- Statistics ----
-- page count: 954655, free: 776787
-- page data bytes: head 13860963, empty 26006602, rows 35134291 (66% full)
-- free 91%, 876991 page(s)
-- data leaf 3%, 36622 page(s)
-- data node 0%, 268 page(s)
-- btree leaf 3%, 36567 page(s)
-- btree node 0%, 570 page(s)
-- free list 0%, 52 page(s)
-- stream trunk 0%, 8 page(s)
-- stream data 0%, 3574 page(s)
下一组是:

---- Statistics ----
-- page count: 235708, free: 164636
-- page data bytes: head 13268512, empty 24936708, rows 33759452 (66% full)
-- free 67%, 159364 page(s)
-- data leaf 14%, 35139 page(s)
-- data node 0%, 267 page(s)
-- btree leaf 14%, 35338 page(s)
-- btree node 0%, 568 page(s)
-- free list 0%, 15 page(s)
-- stream trunk 0%, 9 page(s)
-- stream data 2%, 5005 page(s)
MAX\u COMPACT\u TIME
有什么帮助吗?在这里请求你的帮助。谢谢。

请参阅。
这是一种已知的行为,旨在以提高磁盘使用率为代价加快写入速度。

您解决了问题吗?更重要的是,您是否找到了即使删除行后文件大小也始终增加的原因?是的。。我们通过将整个数据转换成ddl和dml命令,再转换成一个sql文件,然后执行这个文件来解决这个问题。通过这个,我们可以得到所有的数据回来,但减少了大小。