![]() |
MySQL
8.0.20
Source Code Documentation
|
Topics in this section:
The following list describes some of the terms introduced in this section:
A default connection supports:
CapabilitiesGet
and CapabilitiesSet
A session owns state like:
A session is used by the server and the protocol to manage state.
Sessions are:
AuthenticateStart
Reset
Close
Closing a session releases all session related data.
After a client connects to the server it:
CapabilitiesGet
CapabilitiesSet
In the Negotiation step the client checks which features the server supports on the protocol side.
After a successful finish of the Authentication step the previous Session is discarded and a new Session is created.
Further Command Messages run within a Session.
Authentication supports several authentication mechanisms that can be discovered with CapabilitiesGet
.
authentication.mechanisms
Server-side supported SASL mechanism:
[]
["EXTERNAL", "PLAIN" ]
Required mechanisms:
Other known mechanisms:
The messages may be pipelined:
For the server it is no difference if the messages from client where sent in a bulk or if the client waited. The network and send/receive buffers of the Operation System will act as queue.
Expectations help to control the behavior of following messages if a pipelined message fails.
If the server receives a message that is larger than the current Max Message Length, then it MUST close the connection.
message.maxSendLength
1048576
: current max message length 1Mbyte2097152
: asks to increase the max message length to 2Mbytemessage.maxReceiveLength
1048576
: current max receiving message length 1Mbyte2097152
: asks to increase the max receiving message length to 2MbyteIf the result of CapabilitiesGet
contains a extension key from the table below it supports the feature.
Name | Extension |
---|---|
tls | TLS Extension |
CapabilitiesGet()
and documented.The client may assume that the server supports a set of features by default and skip the CapabilitiesGet
step:
CapabilitiesSet
will fail0
: supported, not in use1
: supported, in use1
: switch to TLS connection after server-side OkIf the server doesn't support the capability, then it will return an error.