Skip to main content
Announcements
Introducing a new Enhanced File Management feature in Qlik Cloud! GET THE DETAILS!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

MySQL 8 Support

Dear Community,

 

For test purposes we recently updated our MySQL Database to MySQL 8. 
Currently I have trouble connecting the new database and updating my existing jobs.

 

I tested with tos 6.5.1 as well as with 7.0.1. In both versions there is no native MySQL 8 support, yet. 

Using the built in MySQL 5 connector, it's the same error others got as well: (https://community.talend.com/.../Connection-Failure-Talend-6-5-to-MySQL-8-0/m-p/121480)

Verbindung fehlgeschlagen. Sie müssen die Datenbankeinstellungen ändern.
  java.lang.RuntimeException: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
      at org.talend.core.model.metadata.builder.database.JDBCDriverLoader.getConnection(JDBCDriverLoader.java:195)
      at org.talend.core.model.metadata.builder.database.ExtractMetaDataUtils.connect(ExtractMetaDataUtils.java:1106)
      at org.talend.core.model.metadata.builder.database.ExtractMetaDataFromDataBase.testConnection(ExtractMetaDataFromDataBase.java:316)
      at org.talend.metadata.managment.repository.ManagerConnection.check(ManagerConnection.java:289)
      at org.talend.repository.ui.wizards.metadata.connection.database.DatabaseForm$62.runWithCancel(DatabaseForm.java:3983)
      at org.talend.repository.ui.wizards.metadata.connection.database.DatabaseForm$62.runWithCancel(DatabaseForm.java:1)
      at org.talend.repository.ui.dialog.AProgressMonitorDialogWithCancel$1.runnableWithCancel(AProgressMonitorDialogWithCancel.java:77)
      at org.talend.repository.ui.dialog.AProgressMonitorDialogWithCancel$ARunnableWithProgressCancel$1.call(AProgressMonitorDialogWithCancel.java:161)
      at java.util.concurrent.FutureTask.run(Unknown Source)
      at java.lang.Thread.run(Unknown Source)
  Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
      at java.lang.reflect.Constructor.newInstance(Unknown Source)
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
      at com.mysql.jdbc.Util.getInstance(Util.java:384)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1013)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:973)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:918)
      at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2588)
      at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2321)
      at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:832)
      at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
      at java.lang.reflect.Constructor.newInstance(Unknown Source)
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
      at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:417)
      at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:344)
      at org.talend.core.model.metadata.builder.database.DriverShim.connect(DriverShim.java:41)
      at org.talend.core.model.metadata.builder.database.JDBCDriverLoader.getConnection(JDBCDriverLoader.java:186)
      ... 9 more
  Caused by: java.lang.NullPointerException
      at com.mysql.jdbc.ConnectionImpl.getServerCharacterEncoding(ConnectionImpl.java:3307)
      at com.mysql.jdbc.MysqlIO.sendConnectionAttributes(MysqlIO.java:1985)
      at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1911)
      at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1288)
      at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2506)
      at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2539)
      ... 21 more

 

So I tried to find a solution, here are the results of my research:
MySQL 8 is supported since Connector/J 5.1.41 (https://bugs.mysql.com/bug.php?id=86221)

But TOS 6.5.1 & 7.0.1 both use mysql-connector-java-5.1.30
Connector/J 8.0 is not available in TOS.

Next I tried to add the new Connector/J 8.0 jar to Talend, but it didn't work at all. For me it's still not clear how to update the Talend dependencies for the MySQL components. Is there a suitable way to do so?
I tried everything mentioned in those threads, no success:
.../resolved-Impossible-to-download-mysql-jdbc-driver-jar-in-TOS-DI/m-p/64087
.../Updating-the-mysql-connector-jar-file-to-be-used/td-p/81776

https://help.talend.com/reader/f7Em9WV_cPm2RRywucSN0Q/Gg2kxDcFrne6sKCzcBd27Q

 

After a while I at least was able to connect to the database with JDBC as DB type. Here it was possible to select the external Connector/J 8.0 jar file. (It was imported afterwards)
0683p000009Ly1u.png

This connection works under tos 7.0.1 but has trouble with the mysql mapping in tos 6.5.1.
After a few tests I decided to rather not rebuild all my jobs with the JDBC components. There are to many possible errors as well as different behaviour of the jdbc-components.

At least the jar file is listed now within the modules (in tos 7.0.1):
0683p000009Ly2n.png


My question is, has anybody similar experiences or a solution how to edit the  jar-dependencies of talend and the mysql components?
Does Talend plan to support the native MySQL 8 connection in any future release?


I'm looking forward to your thoughts and input.
Best regards

Labels (5)
7 Replies
Anonymous
Not applicable
Author

Hello,

Could you please create a new feature jira issue on talend bug tracker?

Best regards

Sabrina

Anonymous
Not applicable
Author

Anonymous
Not applicable
Author

Hello,

Feel free to vote for this jira issue.

Best regards

Sabrina

NeroVanhell
Contributor
Contributor

Hi,

 

i had the same error and the Solution for me was to add the following parameters to the mysql Server Config:

default-authentication-plugin=mysql_native_password
collation-server = latin1_german1_ci
character-set-server = latin1

Anonymous
Not applicable
Author

Hi,

I saw in the lira posting the MySQL 8 is added to 7.1.1

I have downloaded 7.1.1 M4, and still no native MySql 8 support.

What am I doing wrong here ?
Bastifantasti1
Contributor
Contributor

@nhalicka 
Hi I am running into the same issue and looking for a solution.
Could you please let me know where exactly you added the parameters?

Best
Basti

NeroVanhell
Contributor
Contributor

Hi,

i think it was in the my.ini Config File.

0683p000009MZyY.jpg