H2数据库产生垃圾恢复方法

系统使用H2作为部分数据存储,期间开发人员使用SQL语句进行表去重操作,导致H2数据库文件暴增至几十G,确无法执行完成去重操作。(H2应该存在是临时数据存盘释放相关的问题),解决数据问题操作如下:

 

1. 备份H2的数据文件 xxx.h2.db 和 xxx.trace.db

2. 执行Recover生成sql: java -cp /xxx/lib/h2-x.x.xxx.jar org.h2.tools.Recover

3. 通过步骤2生成的sql进行恢复:ava -cp /xxx/lib/h2-x.x.xxx.jar org.h2.tools.RunScript -url jdbc:h2:/usr/local/xxx/h2/xxx -user sa -script xxx.h2.sql  (若有密码,还需要加入选项 -password)

 

注明:对于h2-1.3.168之前的版本会出现去重问题

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值