mysql URL格式如下:jdbc:mysql://[host:port],[host:port].../[database][?參數名1][=參數值1][&參數名2][=參數值2]...
MySQL在高版本需要指明是否進行SSL連接 ?在url后面加上 ? ? useSSL=true ? 不然寫程序會有warning
常用的幾個較為重要的參數:
參數名稱 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 參數說明
user ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數據庫用戶名(用于連接數據庫)
passWord ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 用戶密碼(用于連接數據庫)
useUnicode ? ? ? ? ? ? ? ? ? ? ? ? ? ?是否使用Unicode字符集,如果參數characterEncoding設置為gb2312或gbk,本參數值必須設置為true
autoReconnect ? ? ? ? ? ? ? ? ? ? ? 當數據庫連接異常中斷時,是否自動重新連接?
autoReconnectForPools ? ? ? ? ? 是否使用針對數據庫連接池的重連策略
maxReconnects ? ? ? ? ? ? ? ? ? ? ?autoReconnect設置為true時,重試連接的次數
failOverReadOnly ? ? ? ? ? ? ? ? ? 自動重連成功后,連接是否設置為只讀?
對應中文環境,通常mysql連接URL可以設置為:
jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=utf8&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=utf8&autoReconnect=true