cPanel and MySQL Access Hosts
Let's say you're developing a script on your PC at home, and you need to connect to your database remotely using a MySQL admin program. No problem. This procedure is a little quirky, but here are the steps to grant remote access to your database.
Note: if you don't have a database yet, start here.
We'll assume you are using the following information:
database user: example_dbuser
IP address given to your computer from your ISP: 18.104.22.168
server name: server.asmallorange.com (get the IP of your server here)
- Log in to cPanel and click MySQL Databases
- Scroll down to Access Hosts
- Enter your IP address (eg, 22.214.171.124) in the field next to Host (% wildcard is allowed):
- Click Add Host
- You can enter something like 1.2.3.% if you want to allow a range if IP addresses
Note: this is not safe; it will allow anyone in that entire network range to have access to your database if they are able to obtain your password.
Notify Us of IP
We take MySQL security very seriously, so in addition to the standard cPanel procedure we also need to add the remote IP to the firewall. Please contact Support and notify us of the IP address so that we can make sure it has access to MySQL.
Remove User from Database
Currently, the database user only has access through localhost, so you need to force it to recognize the IP address.
- Scroll up to the Current Databases and look for the database 'example_mydb'
- You'll see two delete buttons, one next to the database name (example_mydb) and one under that next to the username (example_dbuser).
- Click the Delete next to the database username
The next screen says:
Account Removed from Access List
Deleted the user example_dbuser from the database example_mydb.
Add User to Database
- Scroll back down to Add Users to Your Databases
- Select the user 'example_dbuser' from the dropdown menu on the left and the database 'example_mydb' from the dropdown menu on the right.
- Click Add User to Database
Testing your Connection
Now, using your PC and remote MySQL client, enter the connection information for your database, database user, and the server name or IP address.