H2資料庫學習
安裝
- 官網:
H2資料庫是一個開源的關係型資料庫;
H2是一個採用java語言編寫的嵌入式資料庫引擎,只是一個類庫(即只有一個 jar 檔案),可以直接嵌入到應用專案中,不受平臺的限制
應用場景:
可以同應用程式打包在一起釋出,可以非常方便地儲存少量結構化資料
可用於單元測試
可以用作快取,即當做記憶體資料庫
執行模式
H2有三種執行模式。
內嵌模式(Embedded Mode):內嵌模式下,應用和資料庫同在一個JVM中,通過JDBC進行連線。可持久化,但同時只能一個客戶端連線。內嵌模式效能會比較好。
伺服器模式(Server Mode):使用伺服器模式和內嵌模式一樣,只不過它可以跑在另一個程序裡。
混合模式:第一個應用以內嵌模式啟動它,對於後面的應用來說它是伺服器模式跑著的。混合模式是內嵌模式和伺服器模式的組合。
連線方式
以嵌入式(本地)連線方式連線H2資料庫
這種連線方式預設情況下只允許有一個客戶端連線到H2資料庫,有客戶端連線到H2資料庫之後,此時資料庫檔案就會被鎖定,那麼其他客戶端就無法再連線了。
連線語法:jdbc:h2:[file:][<path>]<databaseName>
例如:
jdbc:h2:~/test // 連線位於使用者目錄下的test資料庫
jdbc:h2:file:/data/sample
jdbc:h2:file:D:/test/H2/clc // Windows模式
使用TCP/IP的伺服器模式(遠端連線)方式連線H2資料庫(推薦)
這種連線方式就和其他資料庫類似了,是基於Service的形式進行連線的,因此允許多個客戶端同時連線到H2資料庫。
連線語法:jdbc:h2:tcp://<server>[:<port>]/[<path>]<databaseName>
範例:jdbc:h2:tcp://localhost/~/test
H2資料庫的記憶體模式
連線語法:jdbc:h2:mem:<databaseName>
H2資料庫被稱為記憶體資料庫,因為它支援在記憶體中建立資料庫和表。