Eucalyptus中使用的數據庫爲hsqldb。
eucalyptus-2.0.2中使用hsqldb-1.8.0.10版本。
hsqldb主頁:http://hsqldb.org/
Hsqldb是一個開放源代碼的JAVA數據庫,其具有標準的SQL語法和JAVA接口,它可以自由使用和分發,非常簡潔和快速的。具有 Server模式,進程內模式(In-Process)和內存模式(Memory-Only)三種。運行Hsqldb需要hsqldb.jar包, 它包含了一些組件和程序。
eucalyptus的數據庫在/var/lib/eucalyptus/db中,實驗方法如下:
將/var/lib/eucalyptus/db中的文件拷貝出來,替換*.script文件中
CREATE USER SA PASSWORD "83JFI86FSDKJ3987JF99374HHF7KJ38F83LF8ELJ8F4LJ..." PASSWORD後面的字符串爲"",即清除密碼。由於eucalyptus默認的SA密碼過長,如果直接使用會導致驗證失敗,所以可以先清除密碼。
拷貝eucalyptus源碼中eucalyptus-2.0.2/clc/lib/hsqldb-1.8.0.10.jar文件到剛纔拷貝出來的數據庫文件目錄中。
輸入如下命令運行(Java 1.6)
$ java -cp hsqldb-1.8.0.10.jar org.hsqldb.util.DatabaseManager
彈出連接界面,選擇Standalone type,URL中填入數據庫名稱,比如jdbc:hsqldb:file:eucalyptus_auth。連接成功後便可以在輸入框中輸入SQL語句執行。
同時也可以看到數據庫中的表及其字段。