hsqldb快速入門

數據庫環境配置和使用

 

首先從http://www.hsqldb.org/下載一個hsqldb的穩定版本,解壓後可以瀏覽解壓目錄下的index.html,它描述了各個目錄所包含內容,在doc段裏有一個重要的鏈接User Guide: index.html,有空好好研究吧!

 

數據庫實例創建

 

在hsqldb的管理中,如果啓動的數據庫文件不存在,就新建該數據庫文件。

Hsldb啓動

 

Hsqldb的啓動模式有三種主要模式,其他參見User Guide:

 

Server

該模式就像啓動mysql、oracle等數據庫一樣,數據庫啓動後作爲一個服務存在,其他數據庫工具可以通過jdbc的方式訪問他,這是我們最熟悉的模式。啓動腳本如下:

 

java -cp hsqldb.jar org.hsqldb.Server -database.0 ./db/test -dbname.0 test

後面參數:

-database.n 數據庫文件(其他數據庫中對應:數據庫實例)地址,支持相對路徑,注意使用反斜槓

-dbname.n 數據庫文件的訪問同義詞,就是用這個名稱訪問數據庫的

server模式jdbc訪問方式:

 

Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost:9002/test", "sa", "");

 

可以啓動多個數據庫文件,例如:

 

java -cp hsqldb.jar org.hsqldb.Server -database.0 ./db/test0 -dbname.0 test0  -database.1 ./db/test1 -dbname.1 test1

 

In-Process (Standalone)

該模式更接近於文件型數據庫這個概念,當你訪問時他就啓動,這種模式訪問速度最快,缺點是隻能當前訪問線程使用,其他數據庫工具不能同時訪問。例如jdbc訪問:

 

Connection c = DriverManager.getConnection("jdbc:hsqldb:file:/opt/db/testdb", "sa", "");

 

 

In-Memory

顧名思義,內存中的數據庫,你所做的數據庫ddl、dml不會寫入磁盤,也是當你訪問時他就啓動。例如jdbc訪問:

 

Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:aname", "sa", "");

 

Hsqldb 管理工具

 

hsqldb.jar中自帶了一個數據庫管理工具:DatabaseManagerSwing(Swing界面,還有一個是Awt界面的:DatabaseManager),該工具可以通過jdbc訪問多種數據庫。

我們使用server模式啓動hsqldb數據庫,然後運行下列命令:

 

java -cp hsqldb.jar org.hsqldb.util.DatabaseManagerSwing

java -cp hsqldb.jar org.hsqldb.util.DatabaseManager

就可打開主界面,連接時注意選擇:Type,應該是HSQL Database Engine Server

 

Hsqldb關閉

對於任何一種啓動模式,都可以在輸入sql腳本的狀態輸入:SHUTDOWN 或 SHUTDOWN COMPACT 語法來關閉數據庫。

對於In-process和In-memory這兩種模式只要所有的連接關閉了,數據庫也就關閉了。

 

 

Server模式參數設置

 

在server模式下可以設置一些參數,主要的例如訪問端口,可以參見User Guide的第四章高級屬性,一般我們可以在啓動腳本的目錄下編輯一個server.properties,內容如下:

 

server.port=9002

server.trace=true

 

發佈了211 篇原創文章 · 獲贊 1 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章