Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tableau Cloud cannot connect to MySQL port of ClickHouse using Tableau Bridge on Linux #5

Open
burakuyar opened this issue Dec 24, 2024 · 3 comments

Comments

@burakuyar
Copy link

Problem when trying to connect from Tableau Cloud, using Tableau Bridge on RedHat container on Ubuntu host. The structure and connection flow is as below.

  • ClickHouse on-prem is up on a Ubuntu instance behind SSH. (That's why Tableau Bridge is needed) ✅
  • ClickHouse MySQL port is enabled and works as expected when connected from my local via SSH. ✅
  • Tableau Bridge is up in a Docker container that runs on the instance that hosts ClickHouse. ✅
  • Tableau Bridge and Tableau Cloud see each other. ✅
  • When a MySQL connection from Tableau Cloud is initiated, it raises Can't connect to MySQL server.

Have you seen such issues before? Is it possible that the container cannot access to the DB on the host of the container?
I've been changing routings but any of them didn't work. Any help or suggestion is much appreciated. Thanks!

@burakuyar
Copy link
Author

I happened to overcome this issue by modifying the source code a tiny bit before installation (1) and also uploading a custom driver definition file before building the Docker image (2).

  1. Needed to convert network_mode from bridge to host. I'd kindly suggest that having the capability to select this on the UI might be a great candidate for the next release, considering that the variables are already in the source code.

  2. Needed to upload a Driver Definition File containing the driver below and having the following lines added into the /etc/odbcinst.ini (SS from Tableau Docs ).
    https://downloads.mysql.com/archives/get/p/10/file/mysql-connector-odbc-5.3.13-1.el7.x86_64.rpm

[MySQL ODBC 8.0 Unicode Driver]
Driver=/usr/lib64/libmyodbc5w.so
UsageCount=1

[MySQL ODBC 8.0 ANSI Driver]
Driver=/usr/lib64/libmyodbc5a.so
UsageCount=1
image

It was a little challenging but wanted to share here to both maybe contribute to the project and also helping to anyone facing similar issues.

Many thanks for the tool!

@josephflu
Copy link
Collaborator

Thank you for the feedback! We will work on these changes. Hopefully the project will be open source soon so we can take Pull Requests.

@burakuyar
Copy link
Author

Thanks @josephflu, great news!

As a small addition to the part below, it might be again useful to have the ability to add port mappings while triggering the containers.

Needed to convert network_mode from bridge to host. I'd kindly suggest that having the capability to select this on the UI might be a great candidate for the next release, considering that the variables are already in the source code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants