为了方便,使用 h2 做为嵌入式数据库,没想到随着数据量增加,居然开始崩溃了。
几张表加起来才一百万多条记录,访问量也不大,不知道什么情况造成了某张表不可
查询,一查询就报 ArrayIndexOutOfBoundsException ,在h2的网站和issue
里面都查了一下,不知道是什么情况。
幸亏这个不是生产系统,不过生产系统也不可能用h2。里面的数据丢失一些也无所谓,
因此,只好把数据导出,然后再想办法导入。h2提供了一些工具,导出比较简单,bat文件:
java -Xms256m -Xmx1024m -XX:MaxPermSize=32m -cp "lib/h2-1.3.163.jar;%H2DRIVERS%;%CLASSPATH%" org.h2.tools.Recover %*
运行 recover.bat -dir data\db -db dbname 就会生成一个 dbname.h2.sql 这样一个文件。
然后把老的数据库文件移到别的地方,再打开h2的console,在console里面运行
runscript from 'dbname.h2.sql'
就OK了,至于丢了哪些数据,现在还不知道,不过不是重要的数据,也不去追究了。
但是这样给我一个很沉重的打击,本来我还是很喜欢h2的,没想到有这么致命的问题,
而且这已经是第二次了,看来以后这种嵌入的数据库,要开始考虑sqlite这样成熟的东西才行。
分享到:
相关推荐
4、H2Database_SQL语法.doc 5、H2Database高级特性.doc 6、H2Database聚合函数.doc 7、H2Database连接配置.doc 8、H2Database数据类型.doc 9、H2Database中文教程.doc 10、H2内存数据库h2部署操作手册.docx 11、H2...
h2 database 是一个开源免费的Java SQL数据库 数据库分为嵌入式 Embedding 和Server模式 要使用embedding mode 需要做以下事情: 1 添加h2 jar到classpath中 2 使用jdbc驱动:org h2 Driver 3 jdbc数据库URL:jdbc:...
H2 database db zip h2database zip安装包,linux,windows都可
H2Database中文教程,数据库配置,spring hibernate配置详细介绍
这是一个介绍数据库H2Database的中文教程
H2Database内存数据库jar包及示例.
这是关于H2Database-SQL语法文档
我们在开发应用都知道IO是系统性能的瓶颈,在应用开发中,我们会经常碰到以下问题: 1.系统在不断实时地访问数据库时,一秒钟对同一个表操作几千,几万次以上,导致数据表死锁或则处理太慢; ...
H2 database 是一个非常著名的数据库,其性能相当优秀,支持嵌入,client-server模式,支持内存表,cached,text表, 本压缩包 包含 H2 database 源代码和文档 本版本 为最新版本 2010-12-12
H2的主要特点是:
简单的H2数据库和Ibatis集成,使用Myeclipes,H2则选择内存模式和嵌入式模式启动
这是一个有关H2Database数据库高级特性文档
这是一个介绍H2Database数据类型的文档
h2 database数据库的使用,网上下的
h2 database h2 db 数据库
H2数据库,非常好的内存数据库。 H2的优势: 1、h2采用纯Java编写,因此不受平台的限制。 2、h2只有一个jar文件,十分适合作为嵌入式数据库试用。 3、性能和功能的优势 H2比HSQLDB的最大的优势就是h2提供了一个十分...
ehcache和h2 database资料
这是一个关于数据库H2Database聚合函数的文档
H2数据库是一个开源的关系型数据库。H2是一个嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时支持网络版和嵌入式版本,有比较好的兼容性,支持相当标准的sql标准,支持集群。
本文档包含了h2数据库的聚合函数的中文说明和举例