= Enums

[[MySQLAuthenticationPlugin]]
== MySQLAuthenticationPlugin

++++
 MySQL authentication plugins which can be specified at the connection start, more information could be found in <a href="https://dev.mysql.com/doc/refman/8.0/en/authentication-plugins.html">MySQL Reference Manual</a>.
++++
'''

[cols=">25%,75%"]
[frame="topbot"]
|===
^|Name | Description
|[[DEFAULT]]`DEFAULT`|+++
Default authentication plugin, the client will firstly try to use the plugin name provided by the server.
+++
|[[MYSQL_CLEAR_PASSWORD]]`MYSQL_CLEAR_PASSWORD`|+++
Authentication plugin which enables the client to send password to the server as cleartext without encryption.
+++
|[[MYSQL_NATIVE_PASSWORD]]`MYSQL_NATIVE_PASSWORD`|+++
Authentication plugin which uses SHA-1 hash function to scramble the password and send it to the server.
+++
|[[SHA256_PASSWORD]]`SHA256_PASSWORD`|+++
Authentication plugin which uses SHA-256 hash function to scramble the password and send it to the server.
+++
|[[CACHING_SHA2_PASSWORD]]`CACHING_SHA2_PASSWORD`|+++
Like <code>sha256_password</code> but enables caching on the server side for better performance and with wider applicability.
+++
|===

[[MySQLSetOption]]
== MySQLSetOption

++++
 MySQL set options which can be used by link.
++++
'''

[cols=">25%,75%"]
[frame="topbot"]
|===
^|Name | Description
|[[MYSQL_OPTION_MULTI_STATEMENTS_ON]]`MYSQL_OPTION_MULTI_STATEMENTS_ON`|-
|[[MYSQL_OPTION_MULTI_STATEMENTS_OFF]]`MYSQL_OPTION_MULTI_STATEMENTS_OFF`|-
|===

[[SslMode]]
== SslMode

++++
 This parameter specifies the desired security state of the connection to the server.
 More information can be found in <a href="https://dev.mysql.com/doc/refman/8.0/en/connection-options.html#option_general_ssl-mode">MySQL Reference Manual</a>
++++
'''

[cols=">25%,75%"]
[frame="topbot"]
|===
^|Name | Description
|[[DISABLED]]`DISABLED`|+++
establish an unencrypted connection.
+++
|[[PREFERRED]]`PREFERRED`|+++
establish an encrypted connection if the server supports encrypted connections, falling back to an unencrypted connection if an encrypted connection cannot be established.
+++
|[[REQUIRED]]`REQUIRED`|+++
establish an encrypted connection if the server supports encrypted connections. The connection attempt fails if an encrypted connection cannot be established.
+++
|[[VERIFY_CA]]`VERIFY_CA`|+++
Like REQUIRED, but additionally verify the server Certificate Authority (CA) certificate against the configured CA certificates. The connection attempt fails if no valid matching CA certificates are found.
+++
|[[VERIFY_IDENTITY]]`VERIFY_IDENTITY`|+++
Like VERIFY_CA, but additionally perform host name identity verification by checking the host name the client uses for connecting to the server against the identity in the certificate that the server sends to the client.
+++
|===

