Get a free website with any plan

See how
CPANEL

Remote MySQL: connecting from your computer

Last updated

IN SHORT

Flashcloud lets you connect your computer to a MySQL database through cPanel remote database access. To establish a connection with your database credentials on port 3306, you must authorize your public IP address first. Remote access is disabled by default to protect databases from unauthorized incoming traffic.

To connect to your hosting's MySQL database from your own computer, enable Remote Database Access for your IP, then use your database host, username, password, and port in any MySQL client (a desktop app like TablePlus, DBeaver, MySQL Workbench, or a local script). Remote access is off by default because MySQL isn't meant to sit open on the internet, so this is an explicit opt-in per IP.

Enable remote access

Log in to cPanel (via Services, then your hosting, then the cPanel one-click login), then open Remote Database Access under the Databases section. This is where you tell the server which outside IPs are allowed to connect to MySQL directly, instead of only from scripts running on the server itself (which use localhost by default, as covered in creating MySQL databases).

  • Enter your current public IP address and save. If you don't know it, search "what's my ip" in any browser.
  • Some tools let you add a hostname instead of a bare IP, useful if your ISP rotates your address and you have a dynamic DNS name pointed at it.
  • A wildcard entry (%) allows any IP to attempt a connection. Avoid it unless you have a specific reason, since it means anyone with your database password can connect from anywhere. If your home or office IP changes often, re-adding it when it changes is safer than leaving the door open permanently.

Allow a short time for the change to apply. If your ISP assigns a new IP later (common with home internet), connections will start failing until you update the allowed IP again.

Get your connection details

You'll need four values, all separate from your portal or cPanel login:

  • Host: your domain or the server's hostname, not localhost (that only works for apps running on the server itself).
  • Port: 3306, the MySQL default.
  • Database name and username: whatever you set when creating the database, usually prefixed with your account username. See creating MySQL databases if you haven't created one yet.
  • Password: the one set on the database user, not your portal or cPanel password.

If you're not sure what the host value should be for your account, ask support, since it can vary depending on how the server's hostname is configured.

Connect with a desktop client

In your MySQL client of choice, create a new connection and fill in the host, port, database, username, and password from above. Most clients (TablePlus, DBeaver, Sequel Ace, MySQL Workbench) have a "Test connection" button, use it before saving. If the test fails:

  1. Double-check the IP in Remote Database Access matches your current public IP exactly. A stale or wrong entry is the most common cause of a timeout.
  2. Confirm the database user has privileges granted on that specific database. A user with no privileges granted can authenticate but won't see any tables.
  3. Some networks (corporate VPNs, certain coffee shop wifi) block outbound port 3306 entirely. Try a different network to rule this out.

Once connected, you have full access to browse, edit, import, and export like you would in phpMyAdmin, just from your own machine's tools instead of a browser tab.

Connecting from a script or app

If you're connecting from code running somewhere other than your hosting (a local dev environment, a separate server, a CI pipeline), the same host, port, database, username, and password apply. Add that machine's IP to Remote Database Access the same way. If the IP isn't static, for example a CI runner with ephemeral IPs, a wildcard entry may be the only practical option; weigh that against the security tradeoff above, and consider rotating the database password on a schedule if you go that route.

For a persistent local development setup, an SSH connection with a tunnel is a more locked-down alternative to opening remote MySQL access at all: you connect over SSH and forward the local port to the server's 3306, so nothing needs to be exposed to the wider internet on the database side.

When to contact support

If you've confirmed the IP is correct, the user has privileges, and you still can't connect, open a ticket from the portal (Support → New ticket). It's worth mentioning the exact error message from your client and whether you're connecting from a script or a GUI tool, that narrows down whether it's a network-level block or a permissions issue on our end.

Common questions

Why did my remote database connection stop working?

Your public IP address probably changed. Internet providers frequently rotate IP addresses, which blocks access until you add your new IP address in cPanel under Remote Database Access.

Can I use localhost as the database host in my desktop client?

No, localhost only works for applications running directly on the server. Enter your domain name or the server hostname instead when connecting from an external computer.

Why does my connection attempt time out?

Your network might block port 3306, or your saved IP does not match your public IP. Some corporate VPNs and public networks block database traffic completely, so test a different network or verify your address.

Why can I log in but cannot see any tables?

Your database user lacks granted privileges. An unprivileged user can authenticate with the server, but will not see any tables until you assign permissions to that database.

CAN'T FIND IT?

Real humans answer fast.

Hosting with us? Open a ticket and a real person replies - no scripts, no upsells. Still choosing a host? The same team is included with every plan, from day one.