jdbc url的若幹參數

来源:https://www.cnblogs.com/sogeisetsu/archive/2020/02/17/12324161.html
-Advertisement-
Play Games

user 資料庫用戶名,用於連接資料庫……轉載自https://blog.csdn.net/wfanking/article/details/95504879 ...


參數名稱 參數說明 預設值 最低版本要求
user 資料庫用戶名,用於連接資料庫 所有版本
password 用戶密碼(用於連接資料庫) 所有版本
useUnicode 是否使用Unicode字元集,如果參數characterEncoding設置為gb2312或gbk,本參數值必須設置為true false 1.1g
characterEncoding 當useUnicode設置為true時,指定字元編碼。比如可設置為gb2312或gbk,utf8 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
socketTimeoutsocket 操作(讀寫)超時,單位:毫秒。 0表示永不超時 0 3.0.1
socketFactory 驅動程式用於創建與伺服器套接字連接的類的名稱。該類必須實現了介面“com.mysql.jdbc.SocketFactory”,並有公共無參量構造函數。 com.mysql.jdbc.StandardSocketFactory 3.0.3
connectTimeout 套接字連接的超時(單位為毫秒),0表示無超時。僅對JDK-1.4或更新版本有效。預設值為“0”。 0 3.0.1
socketTimeout 網路套接字連接的超時(預設值0表示無超時)。 0 3.0.1
useConfigs 在解析URL屬性或應用用戶指定的屬性之前,載入由逗號“,”分隔的配置屬性列表。在文檔的“配置”部分中解釋了這些配置。 3.1.5
interactiveClient 設置CLIENT_INTERACTIVE標誌,根據INTERACTIVE_TIMEOUT而不是WAIT_TIMEOUT向MySQL通報超時連接。 false 3.1.0
propertiesTransform com.mysql.jdbc.ConnectionPropertiesTransform的1個實施實例,在嘗試連接之前,驅動程式將使用它來更改傳遞給驅動的URL屬性。 3.1.4
useCompression 與伺服器進行通信時採用zlib壓縮(真/假)? 預設值為“假”。 false 3.0.17
High Availability and Clustering (高可用性和簇集)
autoReconnect 驅動程式是否應嘗試再次建立失效的和/或死連接? 如果允許,對於在失效或死連接上發出的查詢(屬於當前事務),驅動程式將拋出異常,但在新事務的連接上發出下一個查詢時,將嘗試再連接。不推薦使用該特 性,這是因為,當應用程式不能恰當處理SQLExceptions時,它會造成與會話狀態和數據一致性有關的副作用,設計它的目的僅用於下述情況,即,當 你無法配置應用程式來恰當處理因死連接和/或無效連接導致的SQLExceptions時。作為可選方式,可將MySQL伺服器變數“wait_timeout”設置為較高的值,而不是預設的8小時。 false 1.1
autoReconnectForPools 使用適合於連接池的再連接策略(預設值為“假”)。 false 3.1.3
failOverReadOnly 在autoReconnect模式下出現故障切換時,是否應將連接設置為“只讀”? true 3.0.12
reconnectAtTxEnd 如果將autoReconnect設置為“真”,在每次事務結束後驅動程式是否應嘗試再連接? false 3.0.10
roundRobinLoadBalance 啟用了autoReconnect而且failoverReadonly為“假”時,是否應按照迴圈方式挑選要連接的主機? false 3.1.2
queriesBeforeRetryMaster 出現故障切換(使用多主機故障切換)並返回主機之前發出的查詢數。無論首先滿足了哪個條件,“queriesBeforeRetryMaster”或“secondsBeforeRetryMaster”,均會再次與主機進行連接。預設值為“50”。 50 3.0.2
secondsBeforeRetryMaster 出現故障切換後,在嘗試再次連接到主伺服器之前,驅動程式應等待的時間? 無論首先滿足了哪個條件,“queriesBeforeRetryMaster”或“secondsBeforeRetryMaster”,均會再次與主 機進行連接。單位為秒,預設值為30。 30 3.0.2
enableDeprecatedAutoreconnect 自3.2版開始,自動再連接功能受到冷落,在3.3版中將刪除該功能。將該屬性設置為“真”可禁止檢查配置的特性。 false 3.2.1
Security (安全)
allowMultiQueries 在一條語句中,允許使用“;”來分隔多條查詢(真/假,預設值為“假”)。 false 3.1.1
useSSL 與伺服器進行通信時使用SSL(真/假),預設值為“假”。 false 3.0.2
requireSSL 要求SSL連接,useSSL=true? 預設值為“假”。 false 3.1.0
allowUrlInLocalInfile 驅動程式在是“LOAD DATA LOCAL INFILE”語句中否允許URL? false 3.1.4
paranoid 採取措施,防止在錯誤信息中泄漏敏感信息,並可可能時清除保存敏感數據的數據結構? 預設值為“假”。 false 3.0.1
Performance Extensions (性能擴展)
metadataCacheSize 如果將cacheResultSetMetaData設置為“真”,對cacheResultSetMetadata的查詢次數(預設值為50)。 50 3.1.1
prepStmtCacheSize 如果允許預處理語句緩衝功能,應緩衝處理多少條預處理語句? 25 3.0.10
prepStmtCacheSqlLimit 如果允許預處理語句緩衝功能,驅動程式將執行解析緩衝處理的最大SQL是什麼? 256 3.0.10
maintainTimeStats 驅動程式是否應維持各種內部定時器,以允許空閑時間計算,以及與伺服器的連接失敗時允許提供更詳細的錯誤消息? 將該屬性設置為“假”,對於每次查詢,至少能減少兩次對System.getCurrentTimeMillis()的調用。 true 3.1.9
blobSendChunkSize 組塊,當通過ServerPreparedStatements發送BLOB/CLOB時使用。 1048576 3.1.9
cacheCallableStmts 驅動程式是否應對CallableStatements的解析過程執行緩衝處理。 false 3.1.2
cachePrepStmts 驅動程式是否應對客戶端預處理語句的PreparedStatements的解析過程執行緩衝處理,是否應檢查伺服器端預處理語句的適用性以及伺服器端預處理語句本身? false 3.0.10
cacheResultSetMetadata 驅動程式是否應對用於Statements和PreparedStatements的ResultSetMetaData執行緩衝處理? 要求 JDK-1.4+,真/假,預設為“假”。 false 3.1.1
cacheServerConfiguration 驅動程式是否應根據每條URL對“HOW VARIABLES”和“SHOW COLLATION”的結果執行緩衝處理? false 3.1.5
dontTrackOpenResources JDBC規範要求驅動程式自動跟蹤和關閉資源,但是,如果你的應用程式不能明確調用作用在語句或結果集上的close(),可能會導致記憶體泄漏。將該屬性設置為“真”,可放寬該限制,對於某些應用程式,會提供更高的記憶體效率。 false 3.1.7
dynamicCalendars 需要時,驅動程式是否應檢索預設日曆,或根據連接/會話對其進行緩衝處理? false 3.1.5
elideSetAutoCommits 如果使用MySQL-4.1或更高版本,當伺服器的狀態與Connection.setAutoCommit(boolean)請求的狀態不匹配時,驅動程式是否僅應發出“set autocommit=n”查詢? false 3.1.3
holdResultsOpenOverStatementClose 驅動程式是否應按照JDBC規範的要求關閉Statement.close()上的結果集? false 3.1.7
locatorFetchBufferSize 如果將“emulateLocators”配置為“真”,當獲取關於getBinaryInputStream的BLOB數據時,緩衝區的大小應是多少? 1048576 3.2.1
useFastIntParsing 是否使用內部“String->Integer”轉換子程式來避免創建過多對象? true 3.1.4
useLocalSessionState 驅動程式是否應引用autocommit的內部值,以及由Connection.setAutoCommit()和Connection.setTransactionIsolation()設置的事務隔離,而不是查詢資料庫? false 3.1.7
useNewIO 驅動程式是否應將java.nio.* interfaces用於網路通信(真/假),預設為“假”。 false 3.1.0
useReadAheadInput 從伺服器讀取數據時,是否使用較新的、優化的非成組緩衝輸入流? true 3.1.5
Debuging/Profiling (調試/ 仿形)
logger 實現了com.mysql.jdbc.log.Log的類的名稱,com.mysql.jdbc.log.Log用於記錄消息(預設為“com.mysql.jdbc.log.StandardLogger”,它會將日誌記錄到STDERR)。 com.mysql.jdbc.log.StandardLogger 3.1.1
profileSQL 跟蹤查詢以及它們對已配製記錄器的執行/獲取次數(真/假),預設為“假”。 false 3.1.0
reportMetricsIntervalMillis 如果允許“gatherPerfMetrics”,記錄它們的頻率是多少(單位毫秒)? 30000 3.1.2
maxQuerySizeToLog 調試或仿形時,控制將記錄的查詢的最大長度/大小。 2048 3.1.3
packetDebugBufferSize 當“enablePacketDebug”為“真”時,需要保留的最大信息包數目。 20 3.1.3
slowQueryThresholdMillis 如果允許“logSlowQueries”,在將查詢記錄為“慢”之前的查詢時間是多少(毫秒)? 2000 3.1.2
useUsageAdvisor 驅動程式是否應發出“使用情況”警告,就DBC和MySQL Connector/J的恰當和高效使用給出建議(真/假,預設為“假”)? false 3.1.1
autoGenerateTestcaseScript 驅動程式是否應將正在執行的SQL(包括伺服器端預處理語句)轉儲到STDERR? false 3.1.9
dumpQueriesOnException 驅動程式是否應將發送至伺服器的查詢內容轉儲到SQLExceptions中? false 3.1.3
enablePacketDebug 允許時,將保留“packetDebugBufferSize”信息包的環形緩衝區,並當在驅動程式代碼的關鍵區域拋出異常時進行轉儲。 false 3.1.3
explainSlowQueries 如果允許了“logSlowQueries”,驅動程式是否應在伺服器上自動發出“EXPLAIN”,並以WARN級別將結果發送給配置好的日誌? false 3.1.2
logSlowQueries 是否要記錄時間長於“slowQueryThresholdMillis”的查詢? false 3.1.2
traceProtocol 是否應記錄跟蹤級網路協議? false 3.1.2
Miscellaneous (其他)
useUnicode 處理字元串時,驅動程式是否應使用Unicode字元編碼? 僅應在驅動程式無法確定字元集映射,或你正在強制驅動程式使用MySQL不是固有支持的字元集時(如UTF-8)才應使用。真/假,預設為“真”。 false 1.1g
characterEncoding 如果“useUnicode”被設置為“真”,處理字元串時,驅動程式應使用什麼字元編碼? 預設為“autodetect”。 1.1g
characterSetResults 字元集,用於通知伺服器以何種字元集返回結果。 3.0.13
connectionCollation 如果設置了它,將通知伺服器通過“set collation_connection”使用該校對。 3.0.13
sessionVariables 以逗號隔開的“名稱/值”對列表,當驅動程式建立了連接後,以“SET SESSION …”的方式將其發送給伺服器。 3.1.8
allowNanAndInf 驅動程式是否應在PreparedStatement.setDouble()中允許NaN或+/- INF值? false 3.1.5
autoDeserialize 驅動程式是否應自動檢測並串並轉換保存在BLOB欄位中的對象? false 3.1.5
capitalizeTypeNames 是否將DatabaseMetaData中的類型名轉換為大寫? 通常僅在使用WebObjects時有用,真/假。預設為“假”。 false 2.0.7
clobberStreamingResults 這會使“流式”結果集被自動關閉,如果在所有數據尚未從伺服器中讀取完之前,執行了另一查詢,正在從伺服器流出的任何未完成數據均將丟失。 false 3.0.9
continueBatchOnError 如果一條語句失敗,驅動程式是否應繼續處理批命令? JDBC規範允許任何一種方式(預設為“真”)。 true 3.0.3
createDatabaseIfNotExist 如果不存在,創建URL中給定的資料庫。假定用戶具有創建資料庫的許可權。 false 3.1.9
emptyStringsConvertToZero 驅動程式是否應允許從空字元串欄位到數值“0”的轉換? true 3.1.8
emulateLocators N/A false 3.1.0
emulateUnsupportedPstmts 驅動程式是否應檢測不被伺服器支持的預處理語句,並用客戶端模擬版替換它們? true 3.1.7
ignoreNonTxTables 是否忽略關於回退的非事務表? 預設值為“假”。 false 3.0.9
jdbcCompliantTruncation 連接到支持告警的伺服器時(MySQL 4.1.0和更高版本),當按照JDBC的要求截短數據時,驅動程式是否應拋出java.sql.DataTruncation異常? true 3.1.2
maxRows 返回的最大行數(0,預設值表示返回所有行)。 -1 all versions
noDatetimeStringSync 不保證ResultSet.getDatetimeType().toString().equals(ResultSet.getString()。 false 3.1.7
nullCatalogMeansCurrent 當DatabaseMetadataMethods請求“目錄”參數時,值“Null”是否意味著使用當前目錄? 它不相容JDBC,但符合驅動程式早期版本的傳統行為。 true 3.1.8
nullNamePatternMatchesAll 接受*pattern參數的DatabaseMetaData方法是否應將null按對待“%”的相同方式處理(不相容JDBC,但驅動程式的早期版本能接受與規範的這類偏離)。 true 3.1.8
pedantic 嚴格遵守JDBC規範。 false 3.0.0
relaxAutoCommit 如果驅動程式所連接的MySQL伺服器的版本不支持事務,仍允許調用commit()、rollback()和setAutoCommit()?真/假,預設為“假”。 false 2.0.13
retainStatementAfterResultSetClose 調用ResultSet.close()後,驅動程式是否應將語句引用保存在結果集中? 在JDBC-4.0後,與JDBC不相容。 false 3.1.11
rollbackOnPooledClose 當連接池中的邏輯連接關閉時,驅動程式是否應發出rollback()? true 3.0.15
runningCTS13 允許在Sun與JDBC相容的testsuite 1.3版中處理缺陷。 false 3.1.7
serverTimezone 覆蓋時區的檢測/映射。當伺服器的時區為映射到Java時區時使用。 3.0.2
strictFloatingPoint 僅在相容性測試的早期版本中使用。 false 3.0.0
strictUpdates 驅動程式是否應對可更新結果集進行嚴格檢查(選擇所有的主鍵)?真/假,預設為“真”。 true 3.0.4
tinyInt1isBit 驅動程式是否應將數據類型TINYINT(1)當作BIT類型對待?創建表時,伺服器會執行BIT -> TINYINT(1)操作。 true 3.0.16
transformedBitIsBoolean 如果驅動程式將TINYINT(1)轉換為不同的類型,為了與MySQL-5.0相容,驅動程式是否應使用BOOLEAN取代BIT?這是因為MySQL-5.0具有BIT類型。 false 3.1.9
ultraDevHack 由於UltraDev已損壞,併為所有語句發出了prepareCall(),需要時,是否要為prepareCall()創建PreparedStatements? false 2.0.3
useHostsInPrivileges 在DatabaseMetaData.getColumn/TablePrivileges()中為用戶添加“@hostname”。真/假,預設為“真”。 true 3.0.2
useOldUTF8Behavior 與4.0和更早版本的伺服器進行通信時,使用UTF-8。 false 3.1.6
useOnlyServerErrorMessages 對伺服器返回的錯誤消息,不事先設定“標準的”SQLState錯誤消息。 true 3.0.15
useServerPrepStmts 如果伺服器支持,是否使用伺服器端預處理語句? 預設值為“真”。 true 3.1.0
useSqlStateCodes 使用SQL標準狀態碼取代“傳統的”X/Open/SQL狀態碼,真/假,預設為“真”。 true 3.1.3
useStreamLengthsInPrepStmts 是否採用PreparedStatement/ResultSet.setXXXStream()方法調用中的流長度參數?真/假,預設為“真”。 true 3.0.2
useTimezone 是否在客戶端和伺服器時區間轉換時間/日期類型(真/假,預設為“假”)? false 3.0.2
useUnbufferedInput 不使用BufferedInputStream來從伺服器讀取數據。 true 3.0.11
yearIsDateType JDBC驅動程式是否應將MySQL類型“YEAR”當作java.sql.Date或SHORT對待? true 3.1.9
zeroDateTimeBehavior 當驅動程式遇到全由0組成的DATETIME值時,應出現什麼?MySQL使用它來表示無效日期。有效值是“exception”、“round”和“convertToNull”。 exception 3.1.4

轉載自https://blog.csdn.net/wfanking/article/details/95504879


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 準備 Maven概述 什麼是Maven? Maven 的正確發音是[ˈmevən], 在美國是 一個口語化的詞語,代表專家、內行的意思。 Maven 是一個項目管理工具,它包含了一個項目對象模型 (POM:Project Object Model),一組標準集合,一個項目生命周 期(Project ...
  • 準備 1、官⽹地址:http://tomcat.apache.org下載。 2、解壓文件,並放到指定路徑,給該文件授權。 3、啟動和停止 Tomcat部署Java項目的3種方式: 部署方式1: 生成war包= webapps = 執行tomcat idea打包成war https://blog.cs ...
  • 一、JS加密 1.有的反爬蟲策略採用js對需要傳輸的數據進行加密處理。 2.經過加密,傳輸的就是密文 3.加密函數或者過程一定是在瀏覽器完成,也就是一定會把代碼(js代碼)暴露給使用者 4.通多閱讀加密演算法,就可以模擬出加密過程,從而達到破解。 5.舉一個案例 """ 破解有道詞典 """ from ...
  • 下麵的代碼主要用於使用python語言調用NASA官方的MODIS處理工具HEG進行投影坐標轉換與重採樣批量處理 主要參考 1. HEG的用戶手冊:https://newsroom.gsfc.nasa.gov/sdptoolkit/HEG/HEG215/EED2 TP 030_Rev01_HEG_U ...
  • 內部類的訪問規則 + 內部類可以直接訪問外部類中的成員,包括私有成員。 因為內部類中持有了一個外部類的引用,格式為:外部類名.this + 外部類要訪問內部類,必須要建立內部對象。 運行結果: 訪問 1. 當內部類定義在外部類的成員位置上,而且非私有,可以在外部其他類中直接建立內部類對象。 格式: ...
  • 消費者和消費者組 如何創建消費者 如何消費消息 消費者配置 提交和偏移量 再均衡 結束消費 ...
  • 一、正面回答 潛移默化中改變 二、日常成長 關心造輪子和用輪子,對於程式員而言,任何一件需要重覆做兩次的事情,就可以考慮通過寫程式把它自動化處理,所以程式員們不太能夠忍受重覆性高的工作。以Java為例,先後有ssh、ssm、spring boot、spring cloud、dubbo等,相關的一些任 ...
  • 1、什麼是樹? 什麼是樹?就是又數據組成的一種數據結構,按照平面展示出來就像一顆倒過來的樹。 2、樹的基本概念 1、樹的節點稱呼:節點、根節點(只有一個,就是第一個)、父節點、子節點、兄弟節點(兄弟節點只能是從同一個父節點的才能稱之為兄弟節點)。 2、一顆樹可以沒有任何節點,稱之為空樹。 3、一棵樹 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...