- 6.3.1 Authentication
- 6.3.2 Connection
- 6.3.3 Session
- 6.3.4 Networking
- 6.3.5 Security
- 6.3.6 Statements
- 6.3.7 Prepared Statements
- 6.3.8 Result Sets
- 6.3.9 Metadata
- 6.3.10 BLOB/CLOB processing
- 6.3.11 Datetime types processing
- 6.3.12 High Availability and Clustering
- 6.3.13 Performance Extensions
- 6.3.14 Debugging/Profiling
- 6.3.15 Exceptions/Warnings
- 6.3.16 Tunes for integration with other products
- 6.3.17 JDBC compliance
- 6.3.18 X Protocol and X DevAPI
When installing a new MySQL agent, the message 'CLIENTPLUGINAUTH' is required occurs when connecting to a MySQL 5.1.5.1 instance. After upgrading to the 5.9.3.10 or higher MySQL cartridge, older MySQL databases (e.g. 5.5) no longer can be monitored. Why do I get a 'JDBC Driver Error. Learn more about MATLAB. Welcome to the Denodo Community. The Denodo Community is where customers, partners and users have access to information that can help them learn about the Denodo Platform and Data Virtualization to start building agile data solutions the modern way.

Configuration properties define how Connector/J will make a connection to a MySQL server. Unless otherwise noted, properties can be set for a DataSource
object or for a Connection
object.
Configuration properties can be set in one of the following ways:
Dbeaver Mysql Client_plugin_auth Is Required Code
Using the
set*()
methods on MySQL implementations ofjava.sql.DataSource
(which is the preferred method when using implementations ofjava.sql.DataSource
):com.mysql.cj.jdbc.MysqlDataSource
com.mysql.cj.jdbc.MysqlConnectionPoolDataSource
As a key-value pair in the
java.util.Properties
instance passed toDriverManager.getConnection()
orDriver.connect()
As a JDBC URL parameter in the URL given to
java.sql.DriverManager.getConnection()
,java.sql.Driver.connect()
or the MySQL implementations of thejavax.sql.DataSource
setURL()
method. If you specify a configuration property in the URL without providing a value for it, nothing will be set; for example, addinguseServerPrepStmts
alone to the URL does not make Connector/J use server-side prepared statements; you need to adduseServerPrepStmts=true
.If the mechanism you use to configure a JDBC URL is XML-based, use the XML character literal
&
to separate configuration parameters, as the ampersand is a reserved character for XML.
The properties are listed in the following tables.
The simplest MySQL connection string for C# is:
new MySqlConnection('server=YOURSERVER;user=YOURUSERID;password=YOURPASSWORD')
For all the other options, see the tables below. MySqlConnector supports most of Oracle’sConnector/NET connection options.
There are also several unique options that are supported only by MySqlConnector, a replacement for MySql.Data
that fixes bugs,adds new features, and improves database access performance. Install it now.
Base Options
These are the basic options that need to be defined to connect to a MySQL database.
Name | Default | Description |
---|---|---|
Host, Server, Data Source, DataSource, Address, Addr, Network Address | localhost | The host name or network address of the MySQL Server to which to connect. Multiple hosts can be specified in a comma-delimited list. On Unix-like systems, this can be a fully qualified path to a MySQL socket file, which will cause a Unix socket to be used instead of a TCP/IP socket. Only a single socket name can be specified. |
Port | 3306 | The TCP port on which MySQL Server is listening for connections. |
User Id, UserID, Username, Uid, User name, User | The MySQL user ID. | |
Password, pwd | The password for the MySQL user. | |
Database, Initial Catalog | (Optional) The case-sensitive name of the initial database to use. This may be required if the MySQL user account only has access rights to particular databases on the server. | |
Protocol, ConnectionProtocol, Connection Protocol | Socket | How to connect to the MySQL Server. This option has the following values:
|
Pipe, PipeName, Pipe Name | MYSQL | The name of the Windows named pipe to use to connect to the server. You must also set ConnectionProtocol=pipe to used named pipes. |
Dbeaver Mysql Client_plugin_auth Is Required
SSL/TLS Options
These are the options that need to be used in order to configure a connection to use SSL/TLS.
Name | Default | Description |
---|---|---|
SSL Mode, SslMode | Preferred | This option has the following values:
|
Certificate File, CertificateFile | Specifies the path to a certificate file in PKCS #12 (.pfx) format containing a bundled Certificate and Private Key used for Mutual Authentication. To create a PKCS #12 bundle from a PEM encoded Certificate and Key, use openssl pkcs12 -in cert.pem -inkey key.pem -export -out bundle.pfx . This option should not be specified if SslCert and SslKey are used. | |
Certificate Password, CertificatePassword | Specifies the password for the certificate specified using the CertificateFile option. Not required if the certificate file is not password protected. | |
SslCert, Ssl-Cert | Specifies the path to the client’s SSL certificate file in PEM format. SslKey must also be specified, and CertificateFile should not be. This option is not supported on the netstandard1.3 or netstandard2.0 platforms. | |
SslKey, Ssl-Key | Specifies the path to the client’s SSL private key in PEM format. SslCert must also be specified, and CertificateFile should not be. | |
CA Certificate File, CACertificateFile, SslCa, Ssl-Ca | This option specifies the path to a CA certificate file in a PEM Encoded (.pem) format. This should be used with SslMode=VerifyCA or SslMode=VerifyFull to enable verification of a CA certificate that is not trusted by the Operating System’s certificate store. | |
Certificate Store Location, CertificateStoreLocation | None | Specifies whether the connection should be encrypted with a certificate from the Certificate Store on the machine. The default value of None means the certificate store is not used; a value of CurrentUser or LocalMachine uses the specified store. |
Certificate Thumbprint, CertificateThumbprint | Specifies which certificate should be used from the Certificate Store specified in the setting above. This option must be used to indicate which certificate in the store should be used for authentication. | |
Tls Cipher Suites,TlsCipherSuites | Specifies which TLS cipher suites may be used during TLS negotiation. The default value (the empty string) allows the OS to determine the TLS cipher suites to use; this is the recommended setting. Otherwise, specify a comma-delimited list of TlsCipherSuite enum values to allow just those cipher suites. (This option is only supported on Linux when using .NET Core 3.1 or .NET 5.0 or later.) | |
Tls Version, TlsVersion, Tls-Version | Specifies which TLS versions may be used during TLS negotiation. The default value of null allows the OS to determine the TLS version to use (see documentation); this is the recommended setting. Otherwise, to restrict the versions that can be used, specify a comma-delimited list of versions taken from the following: TLS 1.0 , TLS 1.1. , TLS 1.2 , TLS 1.3 . (This option allows each version to be specified in a few different formats: Tls12 , Tlsv1.2 , TLS 1.2 , Tls v1.2 ; they are treated equivalently.) |
Connection Pooling Options
Dbeaver Mysql Client_plugin_auth Is Required Download
Connection pooling is enabled by default. These options are used to configure it.
Dbeaver Mysql Client_plugin_auth Is Required -
Name | Default | Description |
---|---|---|
Pooling | true | Enables connection pooling. When pooling is enabled, MySqlConnection.Open /OpenAsync retrieves an open connection from the pool if one is available, and Close /Dispose /DisposeAsync returns the open connection to the pool. If there are no available connections in the pool, and the pool hasn’t reached MaximumPoolSize connections, a new connection will be opened; otherwise, the call to Open /OpenAsync blocks until a connection becomes available or ConnectionTimeout is reached. |
Connection Lifetime, ConnectionLifeTime | 0 | Connections that are returned to the pool will be closed if it’s been more than ConnectionLifeTime seconds since the connection was created. The default value of zero (0) means pooled connections will never incur a ConnectionLifeTime timeout. This can be useful when multiple database servers are being used, as it will force existing connections to be closed, which may spread load more evenly. |
Connection Reset, ConnectionReset | true | If true , all connections retrieved from the pool will have been reset. The default value of true ensures that the connection is in the same state whether it’s newly created or retrieved from the pool. A value of false avoids making an additional server round trip to reset the connection, but the connection state is not reset, meaning that session variables and other session state changes from any previous use of the connection are carried over. |
Connection Idle Ping Time, ConnectionIdlePingTime (Experimental) | 0 | When a connection is retrieved from the pool, and ConnectionReset is false , the serverwill be pinged if the connection has been idle in the pool for longer than ConnectionIdlePingTime seconds.If pinging the server fails, a new connection will be opened automatically by the connection pool. This ensures that theMySqlConnection is in a valid, open state after the call to Open /OpenAsync ,at the cost of an extra server roundtrip. For high-performance scenarios, you may wish to set ConnectionIdlePingTime to a non-zero value to make the connection pool assume that recently-returned connections are still open. If theconnection is broken, it will throw from the first call to ExecuteNonQuery , ExecuteReader ,etc.; your code should handle that failure and retry the connection. This option has no effect if ConnectionReset is true , as that will cause a connection reset packet to be sent to the server, making ping redundant. |
Connection Idle Timeout, ConnectionIdleTimeout | 180 | The amount of time (in seconds) that a connection can remain idle in the pool. Any connection above MinimumPoolSize connections that is idle for longer than ConnectionIdleTimeout is subject to being closed by a background task. The background task runs every minute, or half of ConnectionIdleTimeout , whichever is more frequent. A value of zero (0) means pooled connections will never incur a ConnectionIdleTimeout, and if the pool grows to its maximum size, it will never get smaller. |
Defer Connection Reset, DeferConnectionReset | false | If true , the connection state is not reset until the connection is retrieved from the pool. This was the default behaviour before MySqlConnector 1.3. The default value of false resets connections in the background after they’re closed which makes opening a connection faster, and releases server resources sooner. |
Maximum Pool Size, Max Pool Size, MaximumPoolsize, maxpoolsize | 100 | The maximum number of connections allowed in the pool. |
Minimum Pool Size, Min Pool Size, MinimumPoolSize, minpoolsize | 0 | The minimum number of connections to leave in the pool if ConnectionIdleTimeout is reached. |
Connection Pooling with Multiple Servers
The Server
option supports multiple comma-delimited host names. When this is used with connectionpooling, the LoadBalance
option controls how load is distributed across backend servers.
RoundRobin
(default),Random
: A total ofMaximumPoolSize
connections will be opened, but theymay be unevenly distributed across back ends.LeastConnections
: A total ofMaximumPoolSize
connections will be opened, and they will be evenlydistributed across back ends. The active connections will be selected from the pool in least-recently-usedorder, which does not ensure even load across the back ends. You should setMaximumPoolSize
to thenumber of servers multiplied by the desired maximum number of open connections per backend server.Failover
: All connections will initially be made to the first server in the list. You should setMaximumPoolSize
to the maximum number of open connections you want per server.
Other Options
Dbeaver Mysql Client_plugin_auth Is Required Free
These are the other options that MySqlConnector supports. They are set to sensible defaults and typically do not need to be tweaked.
Name | Default | Description |
---|---|---|
AllowLoadLocalInfile, Allow Load Local Infile | false | Allows the LOAD DATA LOCAL command to request files from the client. This is disabled bydefault as a security precaution.In order to use MySqlBulkLoader and set its Local property to true , youmust set this option to True in your connection string. |
AllowPublicKeyRetrieval, Allow Public Key Retrieval | false | If the user account uses sha256_password authentication, the password must be protected during transmission; TLS is the preferred mechanism for this,but if it is not available then RSA public key encryption will be used. To specify the server’s RSA public key, use the ServerRSAPublicKeyFile connectionstring setting, or set AllowPublicKeyRetrieval=True to allow the client to automatically request the public key from the server. Note that AllowPublicKeyRetrieval=True could allow a malicious proxy to perform a MITM attack to get the plaintext password, so it is False by default and must be explicitly enabled. |
AllowUserVariables, Allow User Variables | false | Allows user-defined variables (prefixed with @ ) to be used in SQL statements. The default value (false )only allows @ -prefixed names to refer to command parameters. |
AllowZeroDateTime, Allow Zero DateTime | false | If set to DATE , DATETIME and TIMESTAMP columns are returned as MySqlDateTime objects instead of DateTime .This allows the special “zero” date value 0000-00-00 to be retrieved from the database. If false (the default)date columns are returned as DateTime values, and an exception is thrown for unrepresentable dates. |
ApplicationName, Application Name | null | Sets the |
AutoEnlist, Auto Enlist | true | If true (default), MySqlConnection will detect if there is an active TransactionScope when it's opened and automatically enlist in it. If false , connections must be manually enlisted by calling EnlistTransaction . |
CancellationTimeout, Cancellation Timeout | 2 | The length of time (in seconds) to wait for a query to be canceled when MySqlCommand.CommandTimeout expires, or zero for no timeout. If a response isn’t received from the server in thistime, the local socket will be closed and a MySqlException will be thrown. |
CharSet, Character Set, CharacterSet | utf8mb4 | MySqlConnector always uses utf8mb4 to send and receive strings from MySQL Server. This option may be specified (for backwards compatibility) but it will be ignored. |
Compress, Use Compression, UseCompression | false | If true (and if the server supports compression), compresses packets sent between client and server. This option is unlikely to be useful inpractice unless there is a high-latency or low-bandwidth network link between the application and the database server. You should measureperformance with and without this option to determine if it’s beneficial in your environment. |
Connect Timeout, Connection Timeout, ConnectionTimeout | 15 | The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error. |
Convert Zero Datetime, ConvertZeroDateTime | false | True to have MySqlDataReader.GetValue() and MySqlDataReader.GetDateTime() return DateTime.MinValue for date or datetime columns that have disallowed values. |
DateTimeKind | Unspecified | The DateTimeKind used when MySqlDataReader returns a DateTime . If set to Utc or Local ,a MySqlException will be thrown if a DateTime command parameter has a Kind of Local or Utc ,respectively. |
GuidFormat | Default | Determines which column type (if any) should be read as a
|
Default Command Timeout, Command Timeout, DefaultCommandTimeout | 30 | The length of time (in seconds) each command can execute before the query is cancelled on the server, or zero to disable timeouts.See the note in the Microsoft documentationfor more explanation of how this is determined. |
IgnoreCommandTransaction, Ignore Command Transaction | false | If true , the value of MySqlCommand.Transaction is ignored when commands are executed.This matches the Connector/NET behaviour and can make porting code easier. For more information, see Transaction Usage. |
IgnorePrepare, Ignore Prepare | false | If true , calls to MySqlCommand.Prepare(Async) are ignored (and will be no-ops).This option is provided for backwards compatibility with MySQL Connector/NET (before 8.0.23) and should not be used. |
Interactive, Interactive Session, InteractiveSession | false | If true , the session wait_timeout variable is initialized from the global interactive_timeout |
Keep Alive, Keepalive | 0 | TCP Keepalive idle time (in seconds). A value of 0 indicates that the OS Default keepalive settings are used; a value greater than 0 is the idle connection time (in seconds) before the first keepalive packet is sent. On Windows, this option is always supported. On non-Windows platforms, this option only takes effect in .NET Core 3.0 and later. For earlier versions of .NET Core, the OS Default keepalive settings are used instead. |
Load Balance, LoadBalance | RoundRobin | The load-balancing strategy to use when
|
No Backslash Escapes, NoBackslashEscapes | false | If true , backslashes are not escaped in string parameters. Set this to true if the server’s SQL mode includes NO_BACKSLASH_ESCAPES . |
Old Guids, OldGuids | false | Obsolete; use the GuidFormat option instead. |
Persist Security Info, PersistSecurityInfo | false | When set to false or no (strongly recommended), security-sensitive information, such as the password, is not returned as part of the connection string if the connection is open or has ever been in an open state. Resetting the connection string resets all connection string values, including the password. Recognized values are true, false, yes, and no. |
ServerRedirectionMode, Server Redirection Mode | Disabled | Whether to use server redirection. The options include:
Server Redirection is supported by Azure Database for MySQL if the This option is only respected if |
ServerRsaPublicKeyFile, Server RSA Public Key File | For sha256_password authentication. See comments under AllowPublicKeyRetrieval . | |
ServerSPN, Server SPN | For MariaDB auth_gssapi_client authentication. Specifies the server’s Service Principal Name (to verify that authentication is occurring with the correct server). | |
Treat Tiny As Boolean, TreatTinyAsBoolean | true | When set to true , TINYINT(1) values are returned as booleans. Setting this to false causes TINYINT(1) to be returned as sbyte/byte. |
Use Affected Rows, UseAffectedRows | false | When false (default), the connection reports found rows instead of changed (affected) rows. Set to true to report only the number of rows actually changed by UPDATE or INSERT … ON DUPLICATE KEY UPDATE statements. |
Use XA Transactions, UseXaTransactions | true | When true (default), using TransactionScope or MySqlConnection.EnlistTransaction will use a XA Transaction. This allows truedistributed transactions, but may not be compatible with server replication; there are other limitations.When set to false , regular MySQL transactions are used, just like Connector/NET. |
Unsupported Options
How To Use Dbeaver Mysql
These options are used by Connector/NET but not supported by MySqlConnector. In general, they should be removedfrom your connection string when migrating from Connector/NET to MySqlConnector.
Name | Default | Description |
---|---|---|
AllowBatch, Allow Batch | true | MySqlConnector always allows batch statements. |
CacheServerProperties, Cache Server Properties | MySqlConnector doesn’t need this optimization. | |
CheckParameters, Check Parameters | true | MySqlConnector always checks stored procedure parameters efficiently; there’s no need to disable this. |
CommandInterceptors, Command Interceptors | MySqlConnector doesn’t support this extensibility mechanism, which is not compatible with async operations. | |
DnsSrv, Dns-Srv | MySqlConnector doesn’t support discovering server addresses from DNS SRV records. | |
ExceptionInterceptors, Exception Interceptors | MySqlConnector doesn’t support this extensibility mechanism. | |
FunctionsReturnString, Functions Return String | false | Not supported. BLOBs are always returned as byte[] . |
IncludeSecurityAsserts, Include Security Asserts | false | Not supported. For partial trust environments. |
IntegratedSecurity, Integrated Security | false | Windows authentication is not supported. |
Logging | false | Use MySqlConnector logging (which is more flexible) instead. |
OldSyntax, Old Syntax, UseOldSyntax, Use Old Syntax | false | This option is deprecated in Connector/NET and unsupported in MySqlConnector. |
ProcedureCacheSize, Procedure Cache Size, ProcedureCache, Procedure Cache | MySqlConnector places no limit on the amount of stored procedure metadata that is cached. It takes a very small amount of memory. | |
Replication | Not supported. | |
RespectBinaryFlags, Respect Binary Flags | true | The binary type of a column is always respected. |
SharedMemoryName, Shared Memory Name | true | Shared memory (on Windows) is not supported as a connection protocol. |
SshHostName, SshPort, SshUserName, SshPassword, SshKeyFile, SshPassPhrase | Connecting via SSH isn’t built into MySqlConnector, but can be set up easily by following these instructions. | |
SqlServerMode, Sql Server Mode | false | Not supported. |
TreatBlobsAsUtf8, Treat BLOBs as UTF8 | false | Not supported. BLOBs are always returned as byte[] . |
UsePerformanceMonitor, Use Performance Monitor, UserPerfMon, PerfMon | false | Not supported. |
UseUsageAdvisor, Use Usage Advisor, Usage Advisor | false | Not supported. |
