1. bluehost knowledge base

How to Import or Export a MySQL Database using phpMyAdmin

How can I export a database?

  1. Log in to your Bluehost control panel.
  2. Navigate to the Database Tools section, and select phpMyAdmin.
  3. Log in with your cPanel username and your MySQL password
    Note: The Master MySQL Password can be set from the Reset MySQL Password tool in the same "Databases" category.
  4. In phpMyAdmin you will see a list of your databases on the left side. Select the database you would like to export from.
  5. Along the top of the screen click the Export tab.
  6. Select the options you would like for the export. If you aren't sure, simply leave things as they are, click the "Save as file" checkbox, and click Go.
  7. This will download a .sql file to your computer.

How can I import a database?

  1. Log in to your Bluehost control panel.
  2. Navigate to the Database Tools section, and select phpMyAdmin.
  3. Log in with your cPanel username and your MySQL password
    Note: The Master MySQL Password can be set from the "Reset MySQL Password" tool in the same "Databases" category.
  4. In phpMyAdmin you will see a list of your databases on the left side. Select the database you would like to import to.
  5. Once the database is selected, click the Import tab at the top.
  6. In this sub-section, a browse button will appear. Select this, and choose the desired .sql file on your PC.
  7. After you have selected the file, click Go at the bottom right; it will import your .sql file for you.
Note: The maximum size for a sql upload via phpMyAdmin is 50MB. For larger databases please either split the database before importing or import via SSH, please refer to Managing Databases with Command Line (SSH).

 

Common Issues

Your import file is too large!

You will know this is the case when phpMyAdmin times out. (It will timeout after 30 seconds of attempting to import.)

If you experience this timeout, you will need to use an alternate method to import the database. Please see to Importing Databases using Command Line(SSH) for more information. 

For security reasons, it's best to upload your database to the /home/USERNAME section of your account. (Replace USERNAME with your cPanel username.)
 

#1044 - Access denied for user 'username1'@'localhost' to database 'user2_wrdp9'

The problem here is your import file contains an SQL query that attempts to create a database for the wrong username. Notice the user2 in 'user2_wrdp9' does not match the username1 in 'username1'@'localhost'. Someone must edit the import file and change the old user2 to your new username1. Here is an example of what it looks like (notice 3 places where the username is outdated):

Database: `user2_wrdp9`CREATE DATABASE `user2_wrdp9` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;USE `user2_wrdp9`;

 
#1044 - Access denied for user 'username1'@'localhost' to database 'wrdp9'

Same as the previous issue; the correct username is missing. On a shared server, your database names must always look like exampleuser_exampledatabase.


#1049 - Unknown database 'username1_wrdp9'

The problem is your import file does not have a query to create the database before importing the data. Simply go to cPanel > MySQL Databases and create a database with that name (in my example, "wrdp9"). Then re-attempt your import.
 

#1007 - Can't create database 'username1_wrdp9'; database exists

The problem here is your import file contains an SQL query that attempts to create a database that already exists. If the database is empty, simply go to cPanel > MySQL Databases and remove that empty database; then re-attempt your import. If the database is not empty, someone must edit the import file and remove the CREATE DATABASE query. [% IF provinfo.code eq 'hg' %](If you do not feel comfortable editing your import file, we will be glad to help you do that.)[% ELSE %][% END %]Here is an example of what it looks like:

CREATE DATABASE `username1_wrdp9` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
 
 
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near...

The file does not contain backup data for a database, or the file has been changed or corrupted.
 

phpMyAdmin 404 Not Found
This happens if you have logged into the cPanel from login.Bluehost.com. In order for PHP MyAdmin to work, you must log in from Bluehost.com or yourdomainname.com/cpanel.

If you are logging in from login.Bluehost.com because you are behind a firewall, you will need to contact your local network administrator to disable the firewall or get the port 2082 and 2088 opened. You can check if this port is open by going to:

https://firewalltester.Bluehost.com/cgi-bin/firewall

 

Less Common Issues

ERROR 1044 (42000): Access denied for user 'username1'@'localhost' to database 'username1_wrdp9'

If you get this error, you do not have privileges on user_* to use Create. Bluehost will need to correct this issue for you.

However, if you need to import now, and can't wait, here is a work-around.

The problem here is your import file contains at least one SQL query that attempts to create a database, and you do not have the privilege to do so. Someone must edit the import file and remove the CREATE DATABASE query. Here is an example of what it looks like:

CREATE DATABASE `username1_wrdp9` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;

After you remove this code, you must go to cPanel and click the MySQL Databases icon. Here you must create your database with the name which was removed from the import file (in my example, "wrdp9"). Then you can Import the modified import file and it will work.