Skip to main content
By default, MySQL on your hosting account only accepts connections from localhost (apps running on the same server). Remote Database Access opens up the firewall on port 3306 for specific IPs you trust, so you can connect from MySQL Workbench, TablePlus, DBeaver, or your laptop’s mysql client. Open it from cPanel home → DatabasesRemote Database Access.
Remote Database Access page

Whitelist your IP

1

Find your public IP

Open whatismyipaddress.com or run curl ifconfig.me from a terminal. That’s the IP MySQL will see when you connect.
2

Add it to the host list

On the Remote Database Access page, paste the IP into Host and an optional comment into Comment (we recommend something like home laptop or prod CI runner, Future You will thank you).Click Add Host.
3

Connect

Use these settings in your client:
SettingValue
HostYour server’s hostname (<n>.web.systeminterface.net) or its shared IP, both work
Port3306
UserFull prefixed user (e.g. acme_wpuser)
PasswordThe one you set when creating the user
DatabaseOptional, leave blank to see all yours
Find your hostname and shared IP in the cPanel right sidebar, under General Information.

Wildcards and IP ranges

The Host field accepts a few patterns:
PatternWhat it allows
203.0.113.42One specific IP
203.0.113.%Anything in 203.0.113.0/24 (256 addresses)
%.example.comAny host whose reverse-DNS ends in example.com
%Any IP, anywhere
Don’t use % (any IP) on a production database. It exposes your MySQL server to the entire internet, and brute-force scanners hit port 3306 constantly. If you genuinely need wide access, scope to a /24 and revisit it monthly.

When your home IP changes

Most home internet connections rotate the public IP every few weeks. If your client suddenly stops connecting:
  1. Re-check your IP at whatismyipaddress.com.
  2. If it’s different from the whitelist entry, update the entry in Remote Database Access.
  3. Save and reconnect.
For laptops that move between networks, consider connecting through a VPN with a static IP, or use SSH tunneling instead (covered below).

Alternative: SSH tunnel

If your hosting plan includes SSH access (Standard and Power tiers), you can tunnel MySQL over SSH and skip Remote Database Access entirely. The connection looks local to MySQL because it comes through localhost on the server side.
ssh -L 3307:localhost:3306 username@hostname.web.systeminterface.net
Then connect your local client to 127.0.0.1:3307 instead of the remote server. The tunnel forwards traffic over your authenticated SSH session, no firewall rule needed. This is the safer default for one-off remote access.

Common issues

Your local network or ISP may be blocking outbound port 3306. Many corporate and university networks do this. Test from a phone hotspot to rule out your own network. If it works there, the issue is your local firewall. Use the SSH tunnel approach instead.
The IP isn’t in the whitelist, or it’s not the IP MySQL is seeing. The error message tells you which IP MySQL saw. Paste that IP into Remote Database Access. Most often this happens because your home network changed IPs.
The TCP connection itself is failing. Either the host/port is wrong, or our firewall is rate-limiting you (we throttle obvious brute-force patterns). Wait 15 minutes and try again. If it persists, open a ticket and we’ll check.

Need a hand?