How to Connect Tableau Desktop to Remote MySQL with SSL (Fix caching_sha2_password Error)
Tableau Desktop is one of the most powerful data visualization and business intelligence platforms in the world. When connecting Tableau Desktop to a remote MySQL 8 database like FreeDB, data analysts and developers commonly hit an authentication error:
Common Tableau Error
"Authentication plugin 'caching_sha2_password' reported error: Authentication requires secure connection."
If you have encountered this error, do not worry! This is a security feature, not a bug. In this comprehensive step-by-step guide, we explain why this happens and show you exactly how to establish an encrypted SSL/TLS connection between Tableau Desktop and FreeDB on both macOS and Windows.
Why Does This Error Happen?
MySQL 8.0 introduced caching_sha2_password as the default user authentication plugin to replace the older, vulnerable mysql_native_password algorithm.
Because caching_sha2_password employs SHA-256 encryption, MySQL refuses to transmit user credentials over unencrypted channels across the public internet. Therefore, the server requires an encrypted SSL/TLS connection.
When you toggle on "Require SSL" in Tableau Desktop, Tableau verifies the server identity using an SSL Certificate Authority (CA) file (ca.pem).
Key Support Answers:
- Are SSL/TLS connections supported from Tableau Desktop? Yes, FreeDB fully supports TLS 1.2 and TLS 1.3 encrypted connections on port 3306.
- Does FreeDB provide a CA certificate file? Yes, the
ca.pemcertificate authority file is provided for all users. - Where can I download the CA certificate? In your FreeDB dashboard when logged in (under the Secure Connections panel).
Your FreeDB Connection Settings
Keep these connection details handy from your FreeDB dashboard:
| Setting | Value | Notes |
|---|---|---|
| Server / Host | sql.freedb.tech | Use pro.freedb.tech if on Persistent Plan |
| Port | 3306 | Standard MySQL remote port |
| Database | freedb_your_db_name | Copy from your database card |
| Username | freedb_your_username | Your database username |
| Password | •••••••••• | Click "Copy" next to Pass in dashboard |
| Require SSL | Checked / Enabled | Required to satisfy caching_sha2_password |
| SSL CA File | ca.pem | Downloaded from your FreeDB dashboard |
Step 1: Download the SSL CA Certificate (ca.pem)
For security reasons and to prevent automated web scrapers from misusing our infrastructure, FreeDB provides the official root CA certificate inside the authenticated dashboard:
- Log in to your account at FreeDB Login.
- Go to your Dashboard.
- In the Secure Connections & SSL CA Certificate section, click Download ca.pem (or use the SSL CA button in the header bar).
- Save the
ca.pemfile into a dedicated folder on your local machine:- macOS:
~/Documents/Tableau/Certs/ca.pem - Windows:
C:\Tableau\Certs\ca.pem
- macOS:
Step 2: Install MySQL ODBC Connector Drivers
Tableau Desktop communicates with MySQL using an ODBC driver:
- macOS Users: Download and install the MySQL Connector/ODBC 8.0 or 8.4 for macOS from Oracle's official MySQL website. (Tableau on macOS uses the iODBC manager).
- Windows Users: Download and install the 64-bit MySQL Connector/ODBC MSI installer.
- After installing the driver, restart Tableau Desktop so it detects the newly installed connector.
Step 3: Connect in Tableau Desktop
- Open Tableau Desktop.
- In the left-hand navigation pane under Connect > To a Server, click MySQL. (If you don't see MySQL, select More... and choose MySQL from the list).
- In the connection modal, enter:
- Server:
sql.freedb.tech(orpro.freedb.tech) - Port:
3306 - Database: Your FreeDB database name (e.g.
freedb_eVAGJ7ID) - Authentication: Username and Password
- Username: Your FreeDB username
- Password: Your FreeDB password
- Server:
- Check the checkbox: Require SSL.
- Next to SSL CA Certificate, click Browse... and select your downloaded
ca.pemfile. - Leave SSL Client Certificate and SSL Client Key empty (client authentication is handled by your database credentials).
- Click Sign In.
Connected Successfully!
Tableau establishes a TLS encrypted session, authenticates via caching_sha2_password, and displays your database schema and tables in the Data Source canvas.
Step 4: Live vs Extract Connection
After your tables appear in Tableau, you have two connection modes:
- Live: Executes queries against FreeDB in real time whenever users interact with your visual dashboard. Best for dynamic, real-time testing.
- Extract (.hyper): Pulls a local compressed snapshot into Tableau. For remote cloud databases, Extracts offer 10x-50x faster dashboard rendering and shield your remote database from repetitive analytical aggregation queries.
Troubleshooting & FAQs
1. "Authentication requires secure connection" error still occurs?
Make sure the "Require SSL" box is checked, and verify that the path to ca.pem is correctly selected. If using macOS, ensure your user profile has read access to the directory containing ca.pem.
2. "Connection timed out" or "Can't connect to MySQL server"?
FreeDB allows remote incoming connections from any IP. If the connection times out, verify that your local network or router does not block outbound traffic on port 3306. University networks and corporate VPNs often restrict database ports.
3. Can I use the same CA certificate in MySQL Workbench, DBeaver, or Python?
Yes! The FreeDB ca.pem certificate works identically in MySQL Workbench (SSL > CA Certificate), DBeaver (SSL tab > CA Certificate), and programming languages like Python (ssl_ca="ca.pem") and Node.js.
Conclusion
Connecting Tableau Desktop to FreeDB with SSL/TLS is quick, secure, and solves the caching_sha2_password error permanently. Simply download your ca.pem certificate from the FreeDB dashboard, enable SSL in Tableau, and start building high-performance data visualizations!