除了标准的 MySQL 定义的“key:value”对之外,用户定义的“key:value”对的逗号分隔列表将传递给 MySQL Server,以在“PERFORMANCE_SCHEMA”表“session_account_connect_attrs”中显示为连接属性和“session_connect_attrs”。用法示例:“connectionAttributes=key1:value1,key2:value2” 此功能仅适用于 MySQL Server 5.6 或更高版本。早期版本的 MySQL Server 不支持连接属性,导致该配置选项被忽略。设置“connectionAttributes=none”
自版本 5.1.25 connectionLifecycleInterceptors
一个以逗号分隔的实现“com.mysql.cj.jdbc.interceptors.ConnectionLifecycleInterceptor”的类列表,应该通知连接生命周期事件(创建、销毁、提交、回滚、设置当前数据库和更改自动提交模式)和可能会改变这些命令的执行。'ConnectionLifecycleInterceptors' 是可堆叠的,可以通过配置属性将多个拦截器指定为逗号分隔列表,拦截器按从左到右的顺序执行。
自版本 5.1.4 加载以逗号分隔的配置属性列表,以指定特定场景的选项组合。这些属性在解析 URL 或应用用户指定的属性之前加载。允许的值为“3-0-Compat”、“clusterBase”、“coldFusion”、“fullDebug”、“maxPerformance”、“maxPerformance-8-0”和“solarisMaxPerformance”,它们对应于连接器/ J jar 文件,在“com/mysql/cj/configurations”下。
自版本 3.1.5 实现“com.mysql.cj.jdbc.ClientInfoProvider”接口以支持 JDBC-4.0 的“Connection.get/setClientInfo()”方法的类的名称。
默认值 com.mysql.cj.jdbc.CommentClientInfoProvider 自版本 5.1.0 如果 URL 中给定的数据库尚不存在,则创建该数据库。假定配置的用户具有创建数据库的权限。
默认值 错误的 自版本 3.1.9 MySQL 使用术语“模式”作为术语“数据库”的同义词,而 Connector/J 历来将 JDBC 术语“目录”作为“数据库”的同义词。此属性为 Connector/J 设置 JDBC 术语“目录”和“模式”中的哪一个在应用程序中用于引用数据库。该属性采用“CATALOG”或“SCHEMA”这两个值之一,并使用它来确定 (1) 哪些连接方法可用于设置/获取当前数据库(例如“setCatalog()”或“setSchema()”? ), (2) 可以在各种“DatabaseMetaData”方法中使用哪些参数来过滤结果(例如目录或“
如果“databaseTerm=CATALOG”,用于搜索的“schemaPattern”将被忽略并且模式方法的调用(如“setSchema()”或获取“Schema()”)变为空操作,反之亦然。
默认值 目录 自版本 8.0.17 驱动程序是否应该检测服务器上安装的自定义字符集/排序规则?如果此选项设置为“true”,驱动程序会在每次建立连接时从服务器获取实际的字符集/排序规则。这可能会显着减慢连接初始化速度。
默认值 错误的 自版本 5.1.29 如果“disconnectOnExpiredPasswords”设置为“false”并且密码已过期,则服务器进入沙盒模式并为所有不需要设置新密码的命令发送“ERR(08001,ER_MUST_CHANGE_PASSWORD)”,直到设置新密码。
默认值 真的 自版本 5.1.23 设置“CLIENT_INTERACTIVE”标志,它告诉 MySQL 根据“interactive_timeout”而不是“wait_timeout”来超时连接。
默认值 错误的 自版本 3.1.0 指示服务器在身份验证阶段为指定的 Java 编码使用默认字符集。如果未设置此属性,Connector/J 将回退到属性“connectionCollation”中指定的排序规则名称或属性“characterEncoding”中指定的 Java 编码,并按优先顺序排列。如果未设置任何属性,则使用字符集 utf8mb4 的默认排序规则。
自版本 5.1.7 'com.mysql.cj.conf.ConnectionPropertiesTransform' 的实现,驱动程序将使用它来修改在尝试连接之前传递给驱动程序的连接字符串属性。
自版本 3.1.4 当池中的逻辑连接关闭时,驱动程序是否应该发出“rollback()”?
默认值 真的 自版本 3.0.15 连接到服务器时不要设置“CLIENT_FOUND_ROWS”标志。请注意,这不符合 JDBC 标准,它会破坏大多数依赖于 DML 语句的“找到的”行与“受影响的行”的应用程序,但确实会导致从“INSERT ... ON DUPLICATE KEY UPDATE”语句到正确的更新计数由服务器返回。
默认值 错误的 自版本 5.1.7