从H2 1.3.175迁移到1.4.195的推荐方法是什么?

hen*_*rik 5 java database migration h2

既然H2 1.4还没有测试版,我想将旧的1.3.175数据库迁移到1.4.195.

背景资料:

那么,推荐的迁移方式是什么?

其他方面/奖金问题:

我应该启用MVStore还是坚持使用PageStore(优点/缺点)?哪一个提供更好的性能(多线程对我来说并不重要),哪一个更好的稳定性,特别是对抗OutOfMemoryErrors

Ste*_*eod 6

使用1.3.175创建的数据库可以使用1.4.195读取和打开,无需任何其他工作.H2会自动检测到它正在使用Page Store并对其进行处理.这样做没有问题.

这样做的好处是,在开发MVStore时,Page Store继续获得性能改进和错误修复.因此,使用Page Store的H2已经成为一个非常稳定的数据库存储.

目前还没有将数据库从使用Page Store转换为使用MVStore的自动升级过程.如果你想这样做,你需要手动完成.使用最新的H2 Jar,使用H2的SCRIPT命令从1.3数据库导出SQL,然后将RUNSCRIPT用于新创建的1.4.195数据库.

如果未明确指定H2 JDBC URL ;mv_store=false,请注意H2将首先查看页面存储数据库是否已存在.如果没有,那么它将创建一个MVStore数据库.这对您,您的应用和您的用户来说都是无缝的.您将注意到的唯一表面差异是磁盘上的数据库文件具有不同的文件扩展名.

最后,一个建议.如果您的客户数据库很大,请考虑仅使用页面存储.我是H2的重要用户.(我在H2上构建的商业产品有成千上万的用户,他们通常拥有数千兆字节的数据库.)即使我使用最新的H2 Jar,我仍然会为所有客户使用页面存储.MVStore仍然存在一些性能问题,这些问题随着数据库变大而开始出现.随着时间的推移,我预计会找出并解决问题的原因.