H2数据库的一些记录

h2是一个非常小巧的数据库,可嵌入程序运行

通过bin的h2.bat运行,启动了数据库服务及用以访问的页面,该页面出访问h2数据库外还可访问其他数据库如mysql

安装目录下的server为将数据库服务作为windows服务启动,该启动方式启动其路径为C:\下,而h2的路径为C:\Documents and Settings\{登录用户名},所以在该方式无法访问在h2.bat启动方式下创建的数据库,

此外可通过代码启动数据库,该启动方式与通过h2启动无异

Server server = Server.createTcpServer();

server.start();

服务默认运行于9092端口,

连接url与Embedded方式相比多出tcp://localhost/

连接url不加端口号,也可以加上如jdbc:h2:tcp://localhost:9092/~/{数据库名}

jdbc:h2:tcp://localhost/~/test

jdbc:h2:tcp://localhost//data/test

不启动数据库可使用Embedded方式操作h2数据库,

Embedded方式,该模式只支持单进程访问

用户目录下

jdbc:h2:~/{数据库名}

file可加可不加:

jdbc:h2:file:~/{数据库名}

指定目录下

jdbc:h2:E:\research\workspace\H2Test\db\test

jdbc:h2:/home/test/h2/test

当前目录下

jdbc:h2:test

内存方式

jdbc:h2:mem:{数据库名} 或 jdbc:h2:~/mem:{数据库名} 

jdbc:h2:mem:

前者在一个java进程中可多次使用,多次创建连接任有效, 但不能被其他进程访问,运行结束后即不存在

后者只能用一次,连接关闭即失效

jdbc:h2:tcp://localhost/mem:test2

jdbc:h2:tcp://localhost/mem:

以上使用服务方式访问,需开启服务,以上两者都连接关闭即失效

混合模式

由应用程序首先启动H2,这时对于应用来说H2工作在嵌入式模式,同时H2监听TCP某个端口,等待远程连接,这就是服务器模式,便于管理维护

jdbc:h2:~/test;AUTO_SERVER=TRUE

猜你喜欢

转载自seahb.iteye.com/blog/1652236
今日推荐