- A TablePlus MySQL connection needs host, port (3306 by default), user, password and optionally a database; MariaDB has its own driver in the TablePlus list.
- SSH tunnelling is built in and can use a password, a private key or your ~/.ssh/config.
- MySQL clients prefer encryption by default (--ssl-mode=PREFERRED); a server can force it with require_secure_transport, and the Ssl_cipher status variable shows whether your TablePlus session is encrypted.
- Error 1045 (Access denied) and "Host ... is not allowed to connect" are account problems on the server, not TablePlus settings.
What you need for a TablePlus MySQL connection
TablePlus needs the database driver, host, port, username and password, according to its connection documentation. For MySQL that means:
- Host: the server name or IP address. For a local server,
127.0.0.1forces a TCP connection. - Port: MySQL uses 3306 by default.
- User and Password: a MySQL account whose host part matches the address you connect from.
- Database: optional; you can switch databases after connecting with Cmd + K (Ctrl + K on Windows).
Choose the MySQL driver for MySQL servers and the separate MariaDB driver for MariaDB; the TablePlus documentation lists them as two supported databases. For managed MySQL such as Amazon RDS for MySQL, take the endpoint and port from the provider's console.
Create the MySQL connection step by step
- Launch TablePlus and click Create a new connection on the welcome screen (or right-click the connection list and choose New).
- Select MySQL and click Create.
- Name the connection and assign a tag and colour. The documented tags are Local, Testing, Development, Staging and Production, and the colour appears in the status bar so you can tell servers apart.
- Enter host, port, user and password, and a database if you want one opened by default.
- Test the connection, then connect. The connection is saved on the welcome screen for next time.
You can also import a URL instead of filling the form, or copy an existing connection with right-click > Copy as URL. Values in a URL must be URL encoded, which matters for passwords containing special characters; the Windows changelog also records a fix for MySQL passwords with special characters, so keep TablePlus updated. The TablePlus documentation shows the URL structure for PostgreSQL only; for MySQL, the simplest route is to copy the connection string from your provider's console or use the form.
Connect to MySQL over an SSH tunnel
Many MySQL servers accept connections only from the local machine or a private network. The TablePlus connection form has an SSH section with its own host, user and password or private key fields; TablePlus has a built-in native SSH client. If you tick Use SSH key and leave the key empty, TablePlus uses ~/.ssh/config.
With a tunnel, the MySQL host is normally 127.0.0.1 and port 3306 as seen from the SSH server. Remember that MySQL then sees the connection as local, so the account must exist for localhost or 127.0.0.1. If the tunnel fails, enable Help > Enable SSH Debug Log as the TablePlus troubleshooting page suggests.
MySQL SSL and encrypted connections in TablePlus
The TablePlus documentation does not describe the SSL options of the connection form in detail. What it does document is a tLSMode parameter for connection URLs, and the changelogs record TLS 1.3 support for MySQL and MariaDB and a fix for SSL key files not being found, which shows the form accepts key and certificate files.
On the MySQL side, the 8.4 manual says clients try to establish an encrypted connection by default (--ssl-mode=PREFERRED) if the server supports it. An administrator can require encryption for every client by enabling require_secure_transport. To check what TablePlus actually negotiated, run the statement below in the query editor: an empty value means the session is not encrypted.
SHOW SESSION STATUS LIKE 'Ssl_cipher';Common TablePlus MySQL connection errors
These messages come from the MySQL server or the network, and the MySQL manual's "Troubleshooting Problems Connecting to MySQL" page is the reference for each.
| Message | What it means | What to check |
|---|---|---|
ERROR 1045 (28000): Access denied for user ... | The account or password was rejected. | User name, password and the account's host part; with an SSH tunnel the client appears as localhost. |
Host ... is not allowed to connect to this MySQL server | No account matches your client host and user name. | Create an account for that host and user combination. |
| Cannot connect, connection refused or timed out | Nothing is reachable at that host and port. | The server is running, port 3306, firewalls and cloud security groups; consider an SSH tunnel. |
| Garbled characters in table data | The wrong encoding is being used to display data. | In TablePlus, Connection > View Using Encoding. |
Next steps
With the connection working, continue with importing a CSV file into MySQL with TablePlus or exporting results to CSV or Excel. If you have not installed TablePlus yet, see how to download and install TablePlus. To compare MySQL clients, read the best MySQL GUI tools, TablePlus vs MySQL Workbench and our TablePlus review.
Frequently asked questions
What port does TablePlus use for MySQL?
The port you enter. MySQL's default is 3306, so use that unless your server or provider uses another port.
Why does TablePlus show Access denied for user?
That is MySQL error 1045: the server rejected the user name, password or the host you are connecting from. Check the account in MySQL, including its host part, rather than TablePlus settings.
Can TablePlus connect to MySQL with SSL?
Yes. The changelogs record TLS 1.3 support for MySQL and work on SSL key files. MySQL clients prefer encryption by default; check the result with SHOW SESSION STATUS LIKE 'Ssl_cipher';.
Should I choose MySQL or MariaDB in TablePlus?
Choose the driver that matches your server. TablePlus lists MySQL and MariaDB as separate supported databases.
How do I manage MySQL users in TablePlus?
TablePlus has a User Management panel in the toolbar, and its documentation says user management is currently supported for MySQL.
Sources
- TablePlus documentation: Connections & Command Line
- TablePlus documentation overview (supported databases)
- TablePlus documentation: Troubleshooting
- TablePlus documentation: Toolbar (User Management)
- TablePlus macOS changelog
- TablePlus Windows changelog
- MySQL 8.4: Troubleshooting problems connecting to MySQL
- MySQL 8.4: Configuring MySQL to use encrypted connections
- MySQL 8.4 release notes
Checked 8 October 2026.
How we research tool guides: our editorial method. CodeWithSQL earns nothing from the vendors mentioned.