国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

h2指南

PiscesYE / 896人閱讀

摘要:和第一點類似,利用數據的嵌入式的特點,在單元測試種使用該數據庫將大大的降低配置成本。如果在連接數據庫時,發現沒有該數據庫,其會自動新建數據庫文件。該模式的運行效率是最高的。另外只有確保導出目標是空的才能順利導入,否則會有沖突。

為什么是h2

方便開發 h2數據庫可以作為一個嵌入式的數據庫使用,在開發環境種使用非常方便。不像mysql等數據庫需要專門啟動一個數據庫服務,并做相關配置。可以大大減少開發時的環境配置成本。

方便測試 h2數據庫可以作為單元測試種使用的數據庫。和第一點類似,利用h2數據的嵌入式的特點,在單元測試種使用該數據庫將大大的降低配置成本。

方便部署 即使是在生產環境中,我也非常非常推薦使用h2。因為該數據庫真的是非常的輕便,非常有利于程序的發布。過去如果使用mysql這種數據庫,在發布前還需要先將mysql服務器開啟,并建立相關db。而使用h2,你幾乎可以完全忽略這些過程。程序發布的過程,你只需要集中在將程序運行起來即可。

性能不錯 h2在一定程度上,性能完全不弱于mysql。如果你的程序的用戶不超過1w,那么我覺得h2在性能上完全可以和mysql媲美。至于更大的數據量和用戶數是否能夠滿足需求,我也不知道。對于初創產品而言,我覺得h2在性能上絕對已經滿足開發者的需求了。

只需要很少的資源 目前如果在要服務器上運行起mysql服務,那么內存就會占據約500mb。如果你的服務器只有1g的內存,那么隨著程序運行,mysql會占據更多的資源,接著就會導致資源不夠使用,mysql服務被關閉。而使用h2就完成沒有這樣的問題。h2占據的資源非常的少,幾乎不會被你察覺。

快速開始

h2和mysql很大的一個區別是,你不需要在連接數據庫之前創建數據庫。如果在連接數據庫時,h2發現沒有該數據庫,其會自動新建數據庫文件。因此最快體驗h2的方法,就是直接去連接一個h2數據庫就可以了。下面舉個用h2 shell連接數據庫的例子。

step1

運行如下命令java -cp h2*.jar org.h2.tools.Shell,h2*.jar文件是h2的運行文件,你可以在官網上下載到。

step2

根據提示輸入URL:jdbc:h2:mem:test

step3

根據提示輸入Driver:org.h2.Driver

step4

根據提示輸入User:root

step5

根據提示輸入Password:123456

step last

這個時候你已經成功的連接到了數據庫,并可以通過SQL語句對數據庫進行操作了。在上面的步驟當中,你連接到了內存當中的test數據庫,雖然他開始不存在,但是h2自動幫你新建了該數據庫。除了在內存種存儲數據庫文件外,你也可以在文件中存儲數據庫,你只需要把URL改成jdbc:h2:~/test,其便會連接~/test路徑對應的數據庫。

什么是h2 web console

h2 web console是一個GUI的數據庫管理工具,通過他你可以很方便的管理你的數據庫。他的作用就相當于PhpMyAdmin。我一般會在開發環境開啟h2 web console。當然應用沒有后臺管理這樣的工具的話,我也會在生產環境開啟h2 web console

啟動h2 web console

運行java -cp h2*.jar org.h2.tools.Console命令變可啟動h2 web console。運行該命令后,在結果輸出種可以看到h2 web console的訪問地址。h2*.jar文件是h2的運行文件,你可以在官網上下載到。

遠程訪問 h2 web console

h2 web console默認是只能在本地訪問的。也就是說如果你在遠程服務器上開啟了h2 web console那么你是沒有辦法在自己的電腦上訪問h2 web console的。為了能在遠程訪問h2 web console,就需要開啟h2 web console的遠程訪問功能。

運行如下命令 java -cp h2*.jar org.h2.tools.Console -webAllowOthers。使用該命令打開的h2 web console就可以在遠程訪問。h2*.jar文件是h2的運行文件,你可以在官網上下載到。

h2 shell模式

h2的shell模式,你可以理解為是h2的命令行。你在該模式下可以通過各種命令行和SQL語句對數據庫進行操作。

運行如下命令java -cp h2*.jar org.h2.tools.Shell,便打開了h2的shell模式。運行該命令后你還需要根據提示輸入DRIVER CLASSURLUSER NAMEPASSWORDh2*.jar文件是h2的運行文件,你可以在官網上下載到。

h2的連接模式

h2有三種運行模式,分別是Embedded ModeServer ModeMixed Mode

Embedded Mode

嵌入模式:在該模式下,程序會直接連接數據庫,訪問數據庫文件。該模式的運行效率是最高的。

特點:該模式雖然效率最高,但是在該模式下數據庫將只有當前程序可以訪問,其他程序是不能訪問數據庫的。

URL:jdbc:h2:~/test

URL: jdbc:h2:mem:test 在內存種運行

Server Mode

服務模式。在該模式下,數據庫將會運行在一個數據庫連接服務上。程序通過訪問數據庫連接服務訪問數據庫。

特點:該模式的性能不如嵌入模式,但是他可以支持多個程序訪問數據庫。

URL:jdbc:h2:tcp://localhost/~/tes

URL:jdbc:h2:ssl://localhost:8085/~/sample;

Mixed Mode

混合模式:該模式,集合了嵌入模式和服務模式的優點。他使得數據庫性能和嵌入模式一樣,同時又支出多個程序一同連接。

背后實現:如果你是第一個連接該數據庫的程序,那么你相當于是用嵌入模式連接數據庫。如果你是第二個或者之后連接的數據庫,那么你就相當于是用服務模式連接的數據庫。

URL:jdbc:h2:~/test;AUTO_SERVER=TRUE

h2 數據庫備份

方法一: 在h2 shell模式下運行backup to "~/backup.zip",其中~/backup.zip是備份的地址。該命令會備份一個完整的數據庫。

方法二: 在數據庫文件目錄下運行java -cp h2*.jar org.h2.tools.Backup -file ~/backup.zip~/backup.zip是備份的地址。該命令會備份一個完整的數據庫。但是該方法不能在數據庫被連接時時運行。

h2 數據庫還原

在數據庫文件目錄下運行java -cp h2*.jar org.h2.tools.Restore -file ~/backup.zip~/backup.zip是備份的地址。該命令會還原一個完整的數據庫。但是該方法不能在數據庫被連接時時運行。

以SQL的形式導出h2數據庫

方法一: 在h2 shell 模式下運行script to "~/backup.sql",其中~/backup.sql是備份的地址。

方法二: 在數據庫文件目錄下運行java -cp h2*.jar org.h2.tools.Script -url jdbc:h2:~/test -user root -password 123456 -script ~/backup.sqljdbc:h2:~/test是數據庫地址,root是用戶名,1123456是秘密,~/backup.sql是保存sql的地址。該方法數據庫不能被使用時運行。

以SQL的形式還原h2數據庫

方法一: 在h2 shell 模式下運行runscript from "~/backup.sql",其中~/backup.sql是備份的地址。并且只有確保導出目標db是空的才能順利導入,否則會有沖突。 解決方案是在運行該方法前運行drop all objects

方法二: 在數據庫文件目錄下運行java -cp h2*.jar org.h2.tools.RunScript -url jdbc:h2:~/test -user root -password 123456 -script ~/backup.sqljdbc:h2:~/test是數據庫地址,root是用戶名,1123456是秘密,~/backup.sql是保存sql的地址。但是該方法不能在數據庫被連接時時運行。另外只有確保導出目標db是空的才能順利導入,否則會有沖突。

位運算

在mysql當中,如果sql語句中需要位運算,可以直接使用&|這些符號。但是在h2中需要使用sql函數才能實現。具體可以參考Functions文檔。

參考鏈接

官網
Starting and Using the H2 Console
Settings of the H2 Console
Creating New Databases
Using Databases in Web Applications
Upgrade, Backup, and Restore
Command Line Tools
The Shell Tool
Database URL Overview
Functions

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/66068.html

相關文章

  • spring boot集成h2指南

    摘要:依賴添加依賴文件。會自動幫你完成的注入,之后無論你是用還是,或者別的框架就隨你了。進行該配置后,每次啟動程序,程序都會運行文件,對數據庫的數據操作。否則只能在本機訪問。,進行該配置,程序開啟時就會啟動。 依賴 添加依賴文件。如果你使用的是gradle,則可以在build.gradle文件種加入下面代碼 dependencies { compile com.h2database:...

    senntyou 評論0 收藏0
  • spring boot集成h2指南

    摘要:依賴添加依賴文件。會自動幫你完成的注入,之后無論你是用還是,或者別的框架就隨你了。進行該配置后,每次啟動程序,程序都會運行文件,對數據庫的數據操作。否則只能在本機訪問。,進行該配置,程序開啟時就會啟動。 依賴 添加依賴文件。如果你使用的是gradle,則可以在build.gradle文件種加入下面代碼 dependencies { compile com.h2database:...

    qqlcbb 評論0 收藏0
  • h2指南

    摘要:和第一點類似,利用數據的嵌入式的特點,在單元測試種使用該數據庫將大大的降低配置成本。如果在連接數據庫時,發現沒有該數據庫,其會自動新建數據庫文件。該模式的運行效率是最高的。另外只有確保導出目標是空的才能順利導入,否則會有沖突。 為什么是h2 方便開發 h2數據庫可以作為一個嵌入式的數據庫使用,在開發環境種使用非常方便。不像mysql等數據庫需要專門啟動一個數據庫服務,并做相關配置。可...

    Amos 評論0 收藏0

發表評論

0條評論

PiscesYE

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<