mysql连接字符串参数
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定义
要求
Baidu Nhomakorabea
默认值
ion(连接/鉴定)
连接的用户名 连接时使用的密码。 驱动程序用于创建与服务器套接字连接的类的名称。 该类必须实现了接口“ com.mysql.jdbc.SocketFactory”,并有公共无参量 套接字连接的超时(单位为毫秒),0表示无超时。 仅对JDK-1.4或更新版本有效。默认值为“0”。 网络套接字连接的超时(默认值0表示无超时)。 在解析URL属性或应用用户指定的属性之前,加载由 逗号“,”分隔的配置属性列表。在文档的“配置” 部分中解释了这些配置。 设置CLIENT_INTERACTIVE标志,根据 INTERACTIVE_TIMEOUT而不是WAIT_TIMEOUT向MySQL通 com.mysql.jdbc.ConnectionPropertiesTransform的 1个实施实例,在尝试连接之前,驱动程序将使用它 来更改传递给驱动的URL属性。 与服务器进行通信时采用zlib压缩(真/假)? 默 认值为“假”。 驱 动程序是否应尝试再次建立失效的和/或死连 接? 如果允许,对于在失效或死连接上发出的查询 (属于当前事务),驱动程序将抛出异常,但在新事 务的连接上发出下一个查询时,将尝试再连接。不推 荐使用该特 性,这是因为,当应用程序不能恰当处 理SQLExceptions时,它会造成与会话状态和数据一 致性有关的副作用,设计它的目的仅用于下述情况, 即,当 你无法配置应用程序来恰当处理因死连接和 /或无效连接导致的SQLExceptions时。作为可选方 式,可将MySQL服务器变量 “wait_timeout”设置为 使用适合于连接池的再连接策略(默认值为“假”) 在autoReconnect模式下出现故障切换时,是否应将 连接设置为“只读”? 如果将autoReconnect设置为“真”,在每次事务结 束后驱动程序是否应尝试再连接? 启用了autoReconnect而且failoverReadonly为“假 ”时,是否应按照循环方式挑选要连接的主机? 出现故障切换(使用多主机故障切换)并返回主机之 前发出的查询数。无论首先满足了哪个条件,“ queriesBeforeRetryMaster”或“ secondsBeforeRetryMaster”,均会再次与主机进行 连接。默认值为“50”。 No No No No No No No No No false false com.mysql.jdbc.S tandardSocketFac tory 0 0
Clustering (高可用性和簇集)
No
false
No No No No
false true false false
No
50
出现故障切换后,在尝试再次连接到主服务器之前, 驱动程序应等待的时间? 无论首先满足了哪个条 件,“queriesBeforeRetryMaster”或“ secondsBeforeRetryMaster”,均会再次与主 机进 行连接。单位为秒,默认值为30。 自3.2版开始,自动再连接功能受到冷落,在3.3版中 将删除该功能。将该属性设置为“真”可禁止检查配 置的特性。 在一条语句中,允许使用“;”来分隔多条查询(真 /假,默认值为“假”)。 与服务器进行通信时使用SSL(真/假),默认值为 “假”。 要求SSL连接,useSSL=true? 默认值为“假”。 驱动程序在是“LOAD DATA LOCAL INFILE”语句中否 允许URL? 采取措施,防止在错误信息中泄漏敏感信息,并可可 能时清除保存敏感数据的数据结构? 默认值为“假
No No No
50 25 256
No
true
No No
1048576 false
No
false
No No
false false
No
false
No
false
如果使用MySQL-4.1或更高版本,当服务器的状态与 Connection.setAutoCommit(boolean)请求的状态不 匹配时,驱动程序是否仅应发出“set autocommit=n 驱动程序是否应按照JDBC规范的要求关闭 Statement.close()上的结果集? 如果将“emulateLocators”配置为“真”,当获取 关于getBinaryInputStream的BLOB数据时,缓冲区的 大小应是多少? 是否使用内部“String->Integer”转换子程序来避 免创建过多对象? 驱动程序是否应引用autocommit的内部值,以及由 Connection.setAutoCommit()和 Connection.setTransactionIsolation()设置的事务 隔离,而不是查询数据库? 驱动程序是否应将java.nio.* interfaces用于网络 通信(真/假),默认为“假”。 从服务器读取数据时,是否使用较新的、优化的非成 组缓冲输入流?
dontTrackOpenResources
dynamicCalendars
elideSetAutoCommits holdResultsOpenOverStatementClose locatorFetchBufferSize useFastIntParsing
useLocalSessionState
属性名
Connection/Authentication(连接/鉴定)
user password socketFactory connectTimeout socketTimeout useConfigs interactiveClient propertiesTransform useCompression
nullCatalogMeansCurrent
nullNamePatternMatchesAll pedantic relaxAutoCommit retainStatementAfterResultSetClose rollbackOnPooledClose runningCTS13
serverTimezone strictFloatingPoint strictUpdates tinyInt1isBit transformedBitIsBoolean
useNewIO useReadAheadInput
Debuging/Profiling (调试/ 仿形)
logger
profileSQL reportMetricsIntervalMillis maxQuerySizeToLog packetDebugBufferSize slowQueryThresholdMillis useUsageAdvisor autoGenerateTestcaseScript dumpQueriesOnException enablePacketDebug
High Availability and Clustering (高可用性和簇集)
autoReconnect
autoReconnectForPools failOverReadOnly reconnectAtTxEnd roundRobinLoadBalance
queriesBeforeRetryMaster
No
30
No
false
No No No No No
false false false false false
(性能扩展)
如果将cacheResultSetMetaData设置为“真”,对 cacheResultSetMetadata的查询次数(默认值为50) 如果允许预处理语句缓冲功能,应缓冲处理多少条预 处理语句? 如果允许预处理语句缓冲功能,驱动程序将执行解析 缓冲处理的最大SQL是什么? 驱动程序是否应维持各种内部定时器,以允许空闲时 间计算,以及与服务器的连接失败时允许提供更详细 的错误消息? 将该属性设置为“假”,对于每次查 询,至少能减少两次对 组块,当通过ServerPreparedStatements发送 BLOB/CLOB时使用。 驱动程序是否应对CallableStatements的解析过程执 行缓冲处理。 驱动程序是否应对客户端预处理语句的 PreparedStatements的解析过程执行缓冲处理,是否 应检查服务器端预处理语句的适用性以及服务器端预 处理语句本身? 驱动程序是否应对用于Statements和 PreparedStatements的ResultSetMetaData执行缓冲 处理? 要求 JDK-1.4+,真/假,默认为“假”。 驱动程序是否应根据每条URL对“HOW VARIABLES”和 “SHOW COLLATION”的结果执行缓冲处理? JDBC规范要求驱动程序自动跟踪和关闭资源,但是, 如果你的应用程序不能明确调用作用在语句或结果集 上的close(),可能会导致内存泄漏。将该属性设置 为“真”,可放宽该限制,对于某些应用程序,会提 供更高的内存效率。 需要时,驱动程序是否应检索默认日历,或根据连接 /会话对其进行缓冲处理?
ultraDevHack
useHostsInPrivileges useOldUTF8Behavior useOnlyServerErrorMessages useServerPrepStmts useSqlStateCodes useStreamLengthsInPrepStmts useTimezone useUnbufferedInput yearIsDateType zeroDateTimeBehavior
secondsBeforeRetryMaster
enableDeprecatedAutoreconnect
Security (安全)
allowMultiQueries useSSL requireSSL allowUrlInLocalInfile paranoid
Performance Extensions (性能扩展)
explainSlowQueries logSlowQueries traceProtocol
Miscellaneous (其他)
useUnicode
characterEncoding characterSetResults connectionCollation sessionVariables allowNanAndInf autoDeserialize capitalizeTypeNames clobberStreamingResults continueBatchOnError createDatabaseIfNotExist emptyStringsConvertToZero emulateLocators emulateUnsupportedPstmts ignoreNonTxTables jdbcCompliantTruncation maxRows noDatetimeStringSync
No No No No
false false 1048576 true
No
false
No No
false true
仿形)
实现了com.mysql.jdbc.log.Log的类的名称, com.mysql.jdbc.log.Log用于记录消息(默认为“ com.mysql.jdbc.log.StandardLogger”,它会将日 志记录到STDERR)。 跟踪查询以及它们对已配制记录器的执行/获取次数 (真/假),默认为“假”。 如果允许“gatherPerfMetrics”,记录它们的频率 是多少(单位毫秒)? 调试或仿形时,控制将记录的查询的最大长度/大小 当“enablePacketDebug”为“真”时,需要保留的 最大信息包数目。 如果允许“logSlowQueries”,在将查询记录为“慢 ”之前的查询时间是多少(毫秒)? 驱动程序是否应发出“使用情况”警告,就DBC和 MySQL Connector/J的恰当和高效使用给出建议(真 /假,默认为“假”)? 驱动程序是否应将正在执行的SQL(包括服务器端预 处理语句)转储到STDERR? 驱动程序是否应将发送至服务器的查询内容转储到 SQLExceptions中? 允许时,将保留“packetDebugBufferSize”信息包 的环形缓冲区,并当在驱动程序代码的关键区域抛出 异常时进行转储。 如果允许了“logSlowQueries”,驱动程序是否应在 服务器上自动发出“EXPLAIN”,并以WARN级别将结 果发送给配置好的日志? 是否要记录时间长于“slowQueryThresholdMillis” 的查询? 是否应记录跟踪级网络协议? No com.mysql.jdbc.l og.StandardLogge r false 30000 2048 20 2000 false false false false
metadataCacheSize prepStmtCacheSize prepStmtCacheSqlLimit
maintainTimeStats
blobSendChunkSize cacheCallableStmts
cachePrepStmts
cacheResultSetMetadata cacheServerConfiguration