7 The MySQL Wire Protocol Driver : Connection Options Descriptions

Connection Options Descriptions
The following connection option descriptions are listed alphabetically by the GUI name that appears on the driver Setup dialog box. The connection string attribute name, along with its short name, is listed immediately underneath the GUI name.
In most cases, the GUI name and the attribute name are the same; however, some exceptions exist. If you need to look up an option by its connection string attribute name, please refer to the alphabetical table of connection string attribute names.
Also, a few connection string attributes, for example, Password, do not have equivalent options that appear on the GUI. They are in the list of descriptions alphabetically by their attribute names.
Table 7-1 lists the connection string attributes supported by the MySQL Wire Protocol driver.
Alternate Servers
Attribute
AlternateServers (ASRV)
Description
A list of alternate database servers to which the driver tries to connect if the primary database server is unavailable. Specifying a value for this option enables connection failover for the driver. The value you specify must be in the form of a string that defines the physical location of each alternate server. All of the other required connection information for each alternate server is the same as what is defined for the primary server connection.
Valid Values
(Database=databasename:HostName=hostvalue:PortNumber=portvalue[, . . .])
You must specify the database name, host name, and port number. The string has the format:
Example
The following Alternate Servers value defines two alternate database servers for connection failover:
(Database=MySQLdb1:HostName=MySQLhost1:PortNumber=5177,
Database=MySQLdb2:HostName=MySQLhost2:PortNumber=5178)
Default
None
GUI Tab
Failover tab
Application Using Threads
Attribute
ApplicationUsingThreads (AUT)
Description
Determines whether the driver works with applications using multiple ODBC threads.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
0 | 1
If set to 1 (Enabled), the driver works with single-threaded and multi-threaded applications.
If set to 0 (Disabled), the driver does not work with multi-threaded applications. If using the driver with single-threaded applications, this value avoids additional processing required for ODBC thread-safety standards.
Default
1 (Enabled)
GUI tab
Advanced tab
Connection Pooling
Attribute
Pooling (POOL)
Description
Specifies whether to use the driver’s connection pooling.
NOTE: The application must be thread-enabled to use connection pooling.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
0 | 1
If set to 1 (Enabled), the driver uses connection pooling.
If set to 0 (Disabled), the driver does not use connection pooling.
Default
0 (Disabled)
GUI Tab
Pooling tab
Connection Reset
Attribute
ConnectionReset (CR)
Description
Determines whether the state of connections that are removed from the connection pool for reuse by the application is reset to the initial configuration of the connection.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
0 | 1
If set to 1 (Enabled), the state of connections removed from the connection pool for reuse by an application is reset to the initial configuration of the connection. Resetting the state can negatively impact performance because additional commands must be sent over the network to the server to reset the state of the connection.
If set to 0 (Disabled), the state of connections is not reset.
Default
0 (Disabled)
GUI Tab
Pooling tab
Connection Retry Count
Attribute
ConnectionRetryCount
Description
The number of times the driver retries connection attempts to the primary database server, and if specified, alternate servers until a successful connection is established.
This option and the Connection Retry Delay connection option, which specifies the wait interval between attempts, can be used in conjunction with failover.
Valid Values
0 | x
where x is a positive integer from 1 to 65535.
If set to 0, the driver does not try to connect after the initial unsuccessful attempt.
If set to x, the driver retries connection attempts the specified number of times. If a connection is not established during the retry attempts, the driver returns an error that is generated by the last server to which it tried to connect.
Default
0
GUI Tab
Failover tab
Connection Retry Delay
Attribute
ConnectionRetryDelay
Description
The number of seconds the driver waits between connection retry attempts when Connection Retry Count is set to a positive integer.
This option and the Connection Retry Count connection option can be used in conjunction with failover.
Valid Values
0 | x
where x is a positive integer from 1 to 65535.
If set to 0, there is no delay between retries.
If set to x, the driver waits the specified number of seconds between connection retry attempts.
Default
3
GUI Tab
Failover tab
Data Source Name
Attribute
DataSourceName (DSN)
Description
The name of a data source in your Windows Registry or odbc.ini file.
Valid Values
string
where string is the name of a data source.
Default
None
GUI Tab
General tab
Database Name
Attribute
Database (DB)
Description
The name of the database to which you want to connect.
Valid Values
database_name
where database_name is the name of a valid database.
Default
None
GUI Tab
General tab
Default Buffer Size for Long/LOB Columns (in Kb)
Attribute
DefaultLongDataBuffLen (DLDBL)
Description
The maximum length of data (in KB) the driver can fetch from long columns in a single round trip and the maximum length of data that the driver can send using the SQL_DATA_AT_EXEC parameter.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
An integer in multiples of 1024
The value must be in multiples of 1024 (for example, 1024, 2048). You need to increase the default value if the total size of any Long data exceeds 1 MB. This value is multiplied by 1024 to determine the total maximum length of fetched data. For example, if you enter a value of 2048, the maximum length of data would be 1024 x 2048, or 2097152 (2 MB).
Default
1024
GUI tab
Advanced tab
Description
Attribute
Description (n/a)
Description
An optional long description of a data source. This description is not used as a runtime connection attribute, but does appear in the ODBC.INI section of the Registry and in the odbc.ini file.
Valid Values
string
where string is a description of a data source.
Default
None
GUI Tab
General tab
Enable SQLDescribeParam
Attribute
EnableDescribeParam (EDP)
Description
Determines whether the driver uses the SQLDescribeParam function, which describes parameters as a data type of SQL_VARCHAR with a length of 255 for statements.
Valid Values
0 | 1
If set to 1 (enabled), the SQLDescribeParam function describes parameters as a data type of SQL_VARCHAR with a length of 255 for statements.
If set to 0 (disabled), the SQLDescribeParam function returns the standard ODBC error IM001.
Default
0 (Disabled)
GUI tab
Advanced tab
Encryption Method
Attribute
EncryptionMethod (EM)
Description
The method the driver uses to encrypt data sent between the driver and the database server. If the specified encryption method is not supported by the database server, the connection fails and the driver returns an error.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
0 | 1 | 2
If set to 0 (No Encryption), data is not encrypted.
If set to 1 (SSL), data is encrypted using SSL. If the server supports protocol negotiation, the driver and server negotiate the use of TLS v1, SSL v3, or SSL v2 in that order.
Default
0 (No Encryption)
GUI Tab
Security tab
Failover Granularity
Attribute
FailoverGranularity (FG)
Description
Determines whether the driver fails the entire failover process or continues with the process if errors occur while trying to reestablish a lost connection.
This option applies only when Failover Mode is set to 1 (Extended Connection) or 2 (Select).
The Alternate Servers option specifies one or multiple alternate servers for failover and is required for all failover methods.
Valid Values
0 | 1 | 2 | 3
If set to 0 (Non-Atomic), the driver continues with the failover process and posts any errors on the statement on which they occur.
If set to 1 (Atomic) the driver fails the entire failover process if an error is generated as the result of anything other than executing and repositioning a Select statement. If an error is generated as a result of repositioning a result set to the last row position, the driver continues with the failover process, but generates a warning that the Select statement must be reissued.
If set to 2 (Atomic Including Repositioning), the driver fails the entire failover process if any error is generated as the result of restoring the state of the connection or the state of work in progress.
If set to 3 (Disable Integrity Check), the driver does not verify that the rows that were restored during the failover process match the original rows. This value applies only when Failover Mode is set to 2 (Select).
Default
0 (Non-Atomic)
GUI Tab
Failover tab
Failover Mode
Attribute
FailoverMode (FM)
Description
Specifies the type of failover method the driver uses.
The Alternate Servers option specifies one or multiple alternate servers for failover and is required for all failover methods.
Valid Values
0 | 1 | 2
If set to 0 (Connection), the driver provides failover protection for new connections only.
If set to 1 (Extended Connection), the driver provides failover protection for new and lost connections, but not any work in progress.
If set to 2 (Select), the driver provides failover protection for new and lost connections. In addition, it preserves the state of work performed by the last Select statement executed.
Default
0 (Connection)
GUI Tab
Failover tab
Failover Preconnect
Attribute
FailoverPreconnect (FP)
Description
Specifies whether the driver tries to connect to the primary and an alternate server at the same time.
This attribute applies only when Failover Mode is set to 1 (Extended Connection) or 2 (Select) and at least one alternate server is specified.
The Alternate Servers option specifies one or multiple alternate servers for failover and is required for all failover methods.
Valid Values
0 | 1
If set to 0 (Disabled), the driver tries to connect to an alternate server only when failover is caused by an unsuccessful connection attempt or a lost connection. This value provides the best performance, but your application typically experiences a short wait while the failover connection is attempted.
If set to 1 (Enabled), the driver tries to connect to the primary and an alternate server at the same time. This can be useful if your application is time-sensitive and cannot absorb the wait for the failover connection to succeed.
Default
0 (Disabled)
GUI Tab
Failover tab
Host
Attribute
HostName (HOST)
Description
The name or the IP address of the server to which you want to connect.
Valid Values
server_name | IP_address
where:
server_name is the name of the server to which you want to connect.
IP_address is the IP address of the server to which you want to connect.
The IP address must be in IPv4 format.
Default
None
GUI Tab
General tab
Host Name In Certificate
Attribute
HostNameInCertificate (HNIC)
Description
A host name for certificate validation when SSL encryption is enabled (Encryption Method=1) and validation is enabled (Validate Server Certificate=1). This option provides additional security against man-in-the-middle (MITM) attacks by ensuring that the server the driver is connecting to is the server that was requested.
Valid Values
host_name | #SERVERNAME#
where the host_name is the host name specified in the certificate. Consult your SSL administrator for the correct value.
If set to a host name, the driver examines the subjectAltName values included in the certificate. If a dnsName value is present in the subjectAltName values, then the driver compares the value specified for Host Name In Certificate with the dnsName value. The connection succeeds if the values match. The connection fails if the Host Name In Certificate value does not match the dnsName value.
If no subjectAltName values exist or a dnsName value is not in the list of subjectAltName values, then the driver compares the value specified for Host Name In Certificate with the commonName part of the Subject name in the certificate. The commonName typically contains the host name of the machine for which the certificate was created. The connection succeeds if the values match. The connection fails if the Host Name In Certificate value does not match the commonName. If multiple commonName parts exist in the Subject name of the certificate, the connection succeeds if the Host Name In Certificate value matches any of the commonName parts.
If set to #SERVERNAME#, the driver compares the host server name specified as part of a data source or connection string to the dnsName or the commonName value.
Default
None
GUI Tab
Security tab
IANAAppCodePage
Attribute
IANAAppCodePage (IACP)
Description
An Internet Assigned Numbers Authority (IANA) value. You must specify a value for this option if your application is not Unicode‑enabled or if your database character set is not Unicode. Refer to Chapter 4 “Internationalization, Localization, and Unicode” in the DataDirect Connect Series for ODBC Reference for details.
The driver uses the specified IANA code page to convert "W" (wide) functions to ANSI.
The driver and Driver Manager both check for the value of IANAAppCodePage in the following order:
If the driver does not find an IANAAppCodePage value, the driver uses the default value of 4 (ISO 8859-1 Latin-1).
Valid Values
IANA_code_page
where IANA_code_page is one of the valid values listed in Chapter 1 “Values for the Attribute IANAAppCodePage” in the DataDirect Connect Series for ODBC Reference. The value must match the database character encoding and the system locale.
Default
4 (ISO 8559-1 Latin-1)
GUI tab
Advanced tab
Interactive Client
Attribute
InteractiveClient (IC)
Description
Determines how long a connection can be idle before the server disconnects it.
NOTE: The wait_timeout variable controlled by the Interactive Client option is a session variable that can be modified by the application after the connection has been established. The Interactive Client option controls only the initial value of the wait_timeout session variable.
Valid Values
0 | 1
If set to 1 (Enabled), the driver initializes the wait_time session variable for the connection with the value of the global interactive_timeout variable.
If set to 0 (Disabled), the driver initializes the wait_timeout session variable with the value of the global wait_timeout variable.
Default
0 (Disabled)
GUI tab
Advanced tab
Key Password
Attribute
KeyPassword (KP)
Description
The password used to access the individual keys in the keystore file when SSL is enabled (Encryption Method=1) and SSL client authentication is enabled on the database server. Keys stored in a keystore can be individually password-protected. To extract the key from the keystore, the driver must have the password of the key.
Valid Values
key_password
where key_password is the password of a key in the keystore.
Default
None
GUI Tab
Security tab
Keystore
Attribute
Keystore (KS)
Description
The name of the directory containing the keystore file to be used when SSL is enabled (Encryption Method=1) and SSL client authentication is enabled on the database server. The keystore file contains the certificates that the client sends to the server in response to the server’s certificate request. If you do not specify a directory, the current directory is used.
NOTE: The keystore and truststore files may be the same file.
Valid Values
keystore_directory
where keystore_directory is the location of the keystore file.
Default
None
GUI Tab
Security tab
Keystore Password
Attribute
KeystorePassword (KSP)
Description
The password used to access the keystore file when SSL is enabled (Encryption Method=1) and SSL client authentication is enabled on the database server. The keystore file contains the certificates that the client sends to the server in response to the server’s certificate request.
NOTE: The keystore and truststore files may be the same file; therefore, they may have the same password.
Valid Values
keystore_password
where keystore_password is the password of the keystore file.
Default
None
GUI Tab
Security tab
Load Balance Timeout
Attribute
LoadBalanceTimeout (LBT)
Description
The number of seconds to keep inactive connections open in a connection pool. An inactive connection is a database session that is not associated with an ODBC connection handle, that is, a connection in the pool that is not in use by an application.
NOTE: The Min Pool Size option may cause some connections to ignore this value.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
0 | x
where x is a positive integer that specifies a number of seconds.
If set to 0, inactive connections are kept open.
If set to x, inactive connections are closed after the specified number of seconds passes.
Default
0 (Disabled)
GUI Tab
Pooling tab
Load Balancing
Attribute
LoadBalancing (LB)
Description
Determines whether the driver uses client load balancing in its attempts to connect to the database servers (primary and alternate). You can specify one or multiple alternate servers by setting the Alternate Servers option.
Valid Values
0 | 1
If set to 1 (Enabled), the driver uses client load balancing and attempts to connect to the database servers (primary and alternate servers) in random order.
If set to 0 (Disabled), the driver does not use client load balancing and connects to each server based on their sequential order (primary server first, then, alternate servers in the order they are specified).
NOTE: This option has no effect unless alternate servers are defined for the Alternate Servers connection option.
Default
0 (Disabled)
GUI Tab
Failover tab
Login Timeout
Attribute
LoginTimeout (LT)
Description
The number of seconds the driver waits for a connection to be established before returning control to the application and generating a timeout error. To override the value that is set by this connection option for an individual connection, set a different value in the SQL_ATTR_LOGIN_TIMEOUT connection attribute using the SQLSetConnectAttr() function.
Valid Values
-1 | 0 | x
where x is a positive integer that specifies a number of seconds.
If set to -1, the connection request does not time out. The driver silently ignores the SQL_ATTR_LOGIN_TIMEOUT attribute.
If set to 0, the connection request does not time out, but the driver responds to the SQL_ATTR_LOGIN_TIMEOUT attribute.
If set to x, the connection request times out after the specified number of seconds unless the application overrides this setting with the SQL_ATTR_LOGIN_TIMEOUT attribute.
Default
15
GUI tab
Advanced tab
Max Pool Size
Attribute
MaxPoolSize (MXPS)
Description
The maximum number of connections allowed within a single connection pool. When the maximum number of connections is reached, no additional connections can be created in the connection pool.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
An integer from 1 to 65535
For example, if set to 20, the maximum number of connections allowed in the pool is 20.
Default
100
GUI Tab
Pooling tab
Min Pool Size
Attribute
MinPoolSize (MNPS)
Description
The minimum number of connections that are opened and placed in a connection pool, in addition to the active connection, when the pool is created. The connection pool retains this number of connections, even when some connections exceed their Load Balance Timeout value.
This connection option can affect performance. See “Performance Considerations” for details.
Valid Values
0 | x
where x is an integer from 1 to 65535.
For example, if set to 5, the start-up number of connections in the pool is 5 in addition to the current existing connection.
If set to 0, no connections are opened in addition to the current existing connection.
Default
0
GUI Tab
Pooling tab
Password
Attribute
Password (PWD)
Description
The password that the application uses to connect to your database. The Password option cannot be specified through the driver Setup dialog box and should not be stored in a data source. It is specified through the Logon dialog box or a connection string.
Valid Values
pwd
where pwd is a valid password.
Default
None
GUI Tab
n/a
Port Number
Attribute
PortNumber (PORT)
Description
The port number of the server listener.
NOTE: This option is mutually exclusive with the Server Name and TNSNames File options.
Valid Values
port_name
where the port_name is the port number of the server listener. Check with your database administrator for the correct number.
Default
3306
GUI Tab
General tab
Query Timeout
Attribute
QueryTimeout (QT)
Description
The number of seconds for the default query timeout for all statements that are created by a connection. To override the value set by this connection option for an individual statement, set a different value in the SQL_ATTR_QUERY_TIMEOUT statement attribute on the SQLSetStmtAttr() function.
Valid Values
-1 | 0 | x
where x is a positive integer that specifies a number of seconds.
If set to -1, the query does not time out. The driver silently ignores the SQL_ATTR_QUERY_TIMEOUT attribute.
If set to 0, the query does not time out, but the driver responds to the SQL_ATTR_QUERY_TIMEOUT attribute.
If set to x, all queries time out after the specified number of seconds unless the application overrides this value by setting the SQL_ATTR_QUERY_TIMEOUT attribute.
Default
0
GUI tab
Advanced tab
Report Codepage Conversion Errors
Attribute
ReportCodepageConversionErrors (RCCE)
Description
Specifies how the driver handles code page conversion errors that occur when a character cannot be converted from one character set to another.
An error message or warning can occur if an ODBC call causes a conversion error, or if an error occurs during code page conversions to and from the database or to and from the application. The error or warning generated is Code page conversion error encountered. In the case of parameter data conversion errors, the driver adds the following sentence: Error in parameter x, where x is the parameter number. The standard rules for returning specific row and column errors for bulk operations apply.
Valid Values
0 | 1 | 2
If set to 0 (Ignore Errors), the driver substitutes 0x1A for each character that cannot be converted and does not return a warning or error.
If set to 1 (Return Error), the driver returns an error instead of substituting 0x1A for unconverted characters.
If set to 2 (Return Warning), the driver substitutes 0x1A for each character that cannot be converted and returns a warning.
Default
0 (Ignore Errors)
GUI tab
Advanced tab
Treat Binary Data as Character Data
Attribute
TreatBinaryAsChar (TBAC)
Description
Allows data that MySQL stores as BINARY or VARBINARY to be described and returned as CHAR or VARCHAR values, respectively.
Valid Values
0 | 1
If set to 1 (Enabled), the driver describes and returns data that MySQL stores as BINARY or VARBINARY as CHAR or VARCHAR values, respectively.
If set to 0 (Disabled), the driver describes and returns data that MySQL describes as BINARY or VARBINARY as BINARY or VARBINARY values, respectively.
Example
Create the following MySQL table:
CREATE TABLE binTable (col1 binary(3))
Then, execute the following Insert statement:
INSERT INTO binTable values('abc')
Then, execute the following query:
SELECT col1 FROM binTable
Using this example, the driver would return the value of col1 as a CHAR value, "abc", instead of a BINARY value "616263".
Default
0 (Disabled)
GUI tab
Advanced tab
Truststore
Attribute
Truststore (TS)
Description
The directory that contains the truststore file and the truststore file name to be used when SSL is enabled (Encryption Method=1) and server authentication is used. The truststore file contains a list of the valid Certificate Authorities (CAs) that are trusted by the client machine for SSL server authentication. If you do not specify a directory, the current directory is used.
NOTE: The truststore and keystore files may be the same file.
Valid Values
truststore_directory\filename
where truststore_directory is the directory where the truststore file is located and filename is the file name of the truststore file.
Default
None
GUI Tab
Security tab
Truststore Password
Attribute
TruststorePassword (TSP)
Description
The password that is used to access the truststore file when SSL is enabled (Encryption Method=1) and server authentication is used. The truststore file contains a list of the Certificate Authorities (CAs) that the client trusts.
NOTE: The truststore and keystore files may be the same file; therefore, they may have the same password.
Valid Values
truststore_password
where truststore_password is a valid password for the truststore file.
Default
None
GUI Tab
Security tab
User Name
Attribute
LogonID (UID)
Description
The default user ID that is used to connect to your database. Your ODBC application may override this value or you may override it in the logon dialog box or connection string.
Valid Values
userid
where userid is a valid user ID with permissions to access the database.
Default
None
GUI Tab
Security tab
Validate Server Certificate
Attribute
ValidateServerCertificate (VSC)
Description
Determines whether the driver validates the certificate that is sent by the database server when SSL encryption is enabled (Encryption Method=1). When using SSL server authentication, any certificate sent by the server must be issued by a trusted Certificate Authority (CA). Allowing the driver to trust any certificate returned from the server even if the issuer is not a trusted CA is useful in test environments because it eliminates the need to specify truststore information on each client in the test environment.
Truststore information is specified using the Trust Store and Trust Store Password options.
Valid Values
0 | 1
If set to 1 (Enabled), the driver validates the certificate that is sent by the database server. Any certificate from the server must be issued by a trusted CA in the truststore file. If the Host Name In Certificate option is specified, the driver also validates the certificate using a host name. The Host Name In Certificate option provides additional security against man-in-the-middle (MITM) attacks by ensuring that the server the driver is connecting to is the server that was requested.
If set to 0 (Disabled), the driver does not validate the certificate that is sent by the database server. The driver ignores any truststore information specified by the Trust Store and Trust Store Password options.
Default
1 (Enabled)
GUI Tab
Security tab