2.2.3 连接属性

连接属性是键值对,应用程序可以在连接期间将其传递给服务器以存储在 PERFORMANCE_SCHEMA 表 session_account_connect_attrssession_connect_attrs中。有两种不同的连接属性:

  • 客户端定义的属性是由客户端隐式编码的保留键值映射。客户端定义的属性集因客户端而异——有关详细信息,请参阅客户端的 X DevAPI 参考。默认情况下,客户端定义的属性会发送到服务器。

  • 用户定义的属性是用户或应用程序提供的键值映射。

connection-attributes X DevAPI 通过连接参数(xdevapi.connection-attributes对于Connector/J) 支持MySQL 连接属性,通过getSession()getClient()方法设置。以下是使用参数的不同方式:

  • 参数的这些设置等同于不使用参数时的默认行为(即发送客户端定义的属性):

    • connection-attributes

    • connection-attributes=

    • connection-attributes=true

    • connection-attributes=[]

  • connection-attributes=false阻止发送任何连接属性,包括客户端定义的属性。

  • connection-attributes=[key1=value1,key2=value2, ...]将用户定义的连接属性作为键值对与客户端定义的连接属性一起发送。当键值对中缺少一个值时,为该属性设置一个空值

以下是配置连接属性的连接字符串的通用示例:

mysqlx://user:password@localhost:33060?connection-attributes=[key1=value1,key2=value2,key3=]