Mysql JDBC URL 中常用參數說明

mysql JDBC Driver
常用的有兩個,一個是gjt(Giant Java Tree)組織提供的mysql驅動,其JDBC Driver名稱(JAVA類名)爲:org.gjt.mm.mysql.Driver
詳情請參見網站:http://www.gjt.org/
或在本網站下載mysql JDBC Driver(mm.jar)

另一個是mysql官方提供的JDBC Driver,其JAVA類名爲:com.mysql.jdbc.Driver
驅動下載網址:http://dev.mysql.com/downloads/,進入其中的MySQL Connector/J區域下載。

mysql JDBC URL格式如下:

jdbc:mysql://[host:port],[host:port].../[database][?參數名1][=參數值1][&參數名2][=參數值2]...

現只列舉幾個重要的參數,如下表所示:

參數名稱 參數說明 缺省值 最低版本要求
user 數據庫用戶名(用於連接數據庫)   所有版本
password 用戶密碼(用於連接數據庫)   所有版本
useUnicode 是否使用Unicode字符集,如果參數characterEncoding設置爲gb2312或gbk,本參數值必須設置爲true false 1.1g
characterEncoding 當useUnicode設置爲true時,指定字符編碼。比如可設置爲gb2312或gbk false 1.1g
autoReconnect 當數據庫連接異常中斷時,是否自動重新連接? false 1.1
autoReconnectForPools 是否使用針對數據庫連接池的重連策略 false 3.1.3
failOverReadOnly 自動重連成功後,連接是否設置爲只讀? true 3.0.12
maxReconnects autoReconnect設置爲true時,重試連接的次數 3 1.1
initialTimeout autoReconnect設置爲true時,兩次重連之間的時間間隔,單位:秒 2 1.1
connectTimeout 和數據庫服務器建立socket連接時的超時,單位:毫秒。 0表示永不超時,適用於JDK 1.4及更高版本 0 3.0.1
socketTimeout socket操作(讀寫)超時,單位:毫秒。 0表示永不超時 0 3.0.1

對應中文環境,通常mysql連接URL可以設置爲:
jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=gbk&autoReconnect=true&failOverReadOnly=false

在使用數據庫連接池的情況下,最好設置如下兩個參數:
autoReconnect=true&failOverReadOnly=false

需要注意的是,在xml配置文件中,url中的&符號需要轉義成&。比如在tomcat的server.xml中配置數據庫連接池時,mysql jdbc url樣例如下:
jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=gbk
&autoReconnect=true&failOverReadOnly=false

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