MYSQL的 JDBC URL 格式 for Connector/J 如下例:
jdbc:mysql://[host][,failoverhost...][:port]/[database] »
[?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]...
jdbc:mysql://[host:port],[host:port].../[database] »
[?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]...
實例:
jdbc:mysql://127.0.0.1:3306/mysql?useUnicode=true&characterEncoding=utf8
重要參數
參數名稱 參數說明 缺省值 最低版本要求 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