Page tree


Outdated release! Latest docs are Release 8.7: Create MySQL Connections

   


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. 

Modify the following properties as needed:


PropertyDescription
Host
Enter your fully qualified hostname. Example:


mysql-server.example.net
PortSet this value to 3306.
Connect String Options

Insert any additional connection parameters, if needed. See below.

User NameUsername to use to connect to the database.
PasswordPassword associated with the above username.
Test ConnectionAfter you have defined the connection credentials type, credentials, and connection string, you can validate those credentials.
Default Column Data Type Inference

Set to disabled to prevent the platform from applying its own type inference to each column on import. The default value is enabled.

Connection NameDisplay name of the connection
Connection DescriptionDescription 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:

Troubleshooting

Error messageDescription
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.

Error: zero date value prohibited

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.