# Cheatsheets

## MySQLAuthOptions

Authentication options for MySQL authentication which can be used for CHANGE_USER command.

Name | Type | Description
`@charset` | `String` | Set the charset for the connection.
`@collation` | `String` | Set the collation for the connection.
`@database` | `String` | Specify the default database for the re-authentication.
`@password` | `String` | Specify the user password to be used for the authentication.
`@properties` | `String` | Set connection attributes which will be sent to server at the re-authentication.
`@serverRsaPublicKeyPath` | `String` | Set the path of server RSA public key which is mostly used for encrypting password under insecure connections when performing authentication.
`@serverRsaPublicKeyValue` | `Buffer` | Set the value of server RSA public key which is mostly used for encrypting password under insecure connections when performing authentication.
`@user` | `String` | Specify the user account to be used for the authentication.

## MySQLConnectOptions

Connect options for configuring link or link.

Name | Type | Description
`@cachePreparedStatements` | `Boolean` | -
`@charset` | `String` | Set the charset for the connection.
`@collation` | `String` | Set the collation for the connection.
`@connectTimeout` | `Number (int)` | -
`@crlPaths` | `Array of String` | -
`@crlValues` | `Array of Buffer` | -
`@database` | `String` | -
`@enabledCipherSuites` | `Array of String` | -
`@enabledSecureTransportProtocols` | `Array of String` | -
`@host` | `String` | -
`@hostnameVerificationAlgorithm` | `String` | -
`@idleTimeout` | `Number (int)` | -
`@idleTimeoutUnit` | `TimeUnit` | -
`@jdkSslEngineOptions` | `JdkSSLEngineOptions` | -
`@keyStoreOptions` | `JksOptions` | -
`@localAddress` | `String` | -
`@logActivity` | `Boolean` | -
`@metricsName` | `String` | -
`@openSslEngineOptions` | `OpenSSLEngineOptions` | -
`@password` | `String` | -
`@pemKeyCertOptions` | `PemKeyCertOptions` | -
`@pemTrustOptions` | `PemTrustOptions` | -
`@pfxKeyCertOptions` | `PfxOptions` | -
`@pfxTrustOptions` | `PfxOptions` | -
`@port` | `Number (int)` | -
`@preparedStatementCacheMaxSize` | `Number (int)` | -
`@preparedStatementCacheSqlLimit` | `Number (int)` | -
`@properties` | `String` | -
`@proxyOptions` | `ProxyOptions` | -
`@receiveBufferSize` | `Number (int)` | -
`@reconnectAttempts` | `Number (int)` | -
`@reconnectInterval` | `Number (long)` | -
`@reuseAddress` | `Boolean` | -
`@reusePort` | `Boolean` | -
`@sendBufferSize` | `Number (int)` | -
`@serverRsaPublicKeyPath` | `String` | Set the path of server RSA public key which is mostly used for encrypting password under insecure connections when performing authentication.
`@serverRsaPublicKeyValue` | `Buffer` | Set the value of server RSA public key which is mostly used for encrypting password under insecure connections when performing authentication.
`@soLinger` | `Number (int)` | -
`@ssl` | `Boolean` | -
`@sslHandshakeTimeout` | `Number (long)` | -
`@sslHandshakeTimeoutUnit` | `TimeUnit` | -
`@sslMode` | `SslMode` | Set the link for the client, this option can be used to specify the desired security state of the connection to the server.
`@tcpCork` | `Boolean` | -
`@tcpFastOpen` | `Boolean` | -
`@tcpKeepAlive` | `Boolean` | -
`@tcpNoDelay` | `Boolean` | -
`@tcpQuickAck` | `Boolean` | -
`@trafficClass` | `Number (int)` | -
`@trustAll` | `Boolean` | -
`@trustStoreOptions` | `JksOptions` | -
`@useAffectedRows` | `Boolean` | Sets how affected rows are calculated on update/delete/insert, if set to `true` an update that effectively does not change any data returns zero affected rows. See mysql-affected-rows for details.
`@useAlpn` | `Boolean` | -
`@usePooledBuffers` | `Boolean` | -
`@user` | `String` | -