Contents:
You can create connections to one or more MySQL databases from Trifacta® Self-Managed Enterprise Edition. For more information on MySQL, see https://www.mysql.com/.
Pre-requisites
If the Trifacta databases are hosted on a MySQL server, do not create a connection to this database.
- If you haven't done so already, you must create and deploy an encryption key file for the Trifacta node to be shared by all relational connections. For more information, see Create Encryption Key File.
Configure
To create this connection:
- In the Import Data page, click the Plus sign. Then, select the Relational tab. Click the MySQL card.
- You can also create connections through the Connections page.
- See Connections Page.
For additional details on creating a MySQL connection, see Enable Relational Connections.
This connection can also be created using the API.
- For details on values to use when creating via API, see Connection Types.
- See API Reference.
Modify the following properties as needed:
Property | Description |
---|---|
Host | Enter your fully qualified hostname. Example: mysql-server.example.net |
Port | Set this value to 3306 . |
Connect String Options | Insert any additional connection parameters, if needed. See below. |
User Name | Username to use to connect to the database. |
Password | Password associated with the above username. |
Test Connection | After you have defined the connection credentials type, credentials, and connection string, you can validate those credentials. |
Default Column Data Type Inference | Set to |
Connection Name | Display name of the connection |
Connection Description | Description of the connection, which appears in the application. |
Reference
Connection URL
The properties that you provide are inserted into the following URL, which connects Trifacta Self-Managed Enterprise Edition to the connection:
jdbc:mysql://<host>:<port>/<database><connect-string-options>
Connect string options
The connect string options are optional. If you are passing additional properties and values to complete the connection, the connect string options must be structured in the following manner:
&<prop1>=<val1>&<prop2>=<val2>...
where:
<prop>
: the name of the property<val>
: the value for the property
delimiters:
&
: all additional property names must be prefixed with an ampersand (&
).=
: property names and values must be separated with an equal sign (=
).
Default connect string options
The following connect string options are specified by default.
NOTE: These options should not be overridden or modified.
The following connect string option requires the driver to use cursor-based fetching to retrieve rows.
useCursorFetch=true;
Enable TLS (SSL)
You can insert the following connection string option to enable secure (TLS) connectivity with the MySQL server. Please note the TLS version numbers in the string listed below:
&enabledTLSProtocols=TLSv1,TLSv1.1,TLSv1.2
Column aliasing issues
In some environments, data fetched from a MySQL database table using column aliasing fails, returning incorrect null values after sampling. In these cases, you can try to add the following connection string option. This option reverts to an earlier behavior in how column aliasing is handed:
useOldAliasMetadataBehavior=true;
For more information on this issue, see https://support.tibco.com/s/article/Using-Column-Alias-in-MySQL-and-MariaDB.
Driver Information
This connection uses the following driver:
Driver name:
com.mysql.cj.jdbc.Driver
- Driver version:
8.0
- Driver documentation: https://dev.mysql.com/doc/connector-j/8.0/en/
Troubleshooting
Error message | Description |
---|---|
1042 - ER_BAD_HOST_ERROR | Unable to connect to host. Please verify the host and port values. |
1045 - ER_ACCESS_DENIED_ERROR | Credentials failed to connect. Please verify your credentials. Tip: Click the Test Connection button to verify that your credentials are working properly. |
Set the following option in the connect string options: zeroDateTimeBehavior=convertToNull | |
Prepared statement needs to be re-prepared. | Database Cursor is not compatible with PREPARED statements in MySQL. The fix is to set the following in the Connect String Options: useCursorFetch=false |
SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate) | SSL ciphers need to be enabled. For more information, see "Enable TLS (SSL)" above. |
For more information on error messages for this connection type, see https://dev.mysql.com/doc/refman/8.0/en/error-handling.html.
Use
For more information, see Database Browser.
Data Conversion
For more information on how values are converted during input and output with this database, see MySQL Data Type Conversions.
This page has no comments.