I think most everyone will agree when I say moving to a new web host is a headache.
Or is it?
At Name Hero we try to make the move over as easy as possible after purchasing a web hosting package from us.
If your previous web host uses cPanel our Level III support team will move your account over free of charge within the first 30 days.
If you’re a Reseller, we’ll migrate up to 10 cPanel accounts for free within the first 30 days.
But what about those moving from a web host that doesn’t have cPanel?
We see this happen quite often actually and we do offer a migration service for a low fee.
However, if you’d rather manually move your WordPress website over, the process isn’t as hard as you may think.
WordPress File Structure
WordPress comes in two pieces:
- System Files
The system files are the core components of WordPress and are what make your website actually function.
Besides your custom themes, plugins, and configuration files (including .htaccess), the core WordPress files are the same for every website.
The database is where all of the data inside your WordPress is stored. While all WordPress installations share the same database structure, the data inside is unique to every website.
This includes website customization, posts, pages, theme settings, plugin data, users, etc.
Step 1 – Download The Files At Your Current Host
As long as you’re running the self-hosted version of WordPress (and not WordPress.com hosted), your web host will provide you with FTP access to be able to navigate through your files.
The first step to migrating over to a new web host includes downloading all of your current files.
Even though all WordPress installations share the same core files, it’s important you download everything to ensure you’re migrating over to the same version and bring along with you your custom theme, plugins, and media files.
Your current host should provide you with FTP information to get your files. You can then use the free FTP program Filezilla to login and download them to your computer:
Once you have all the files on your computer, it’s then time to grab your current database.
Step 2 – Download Your Current Database
Most all web hosts provide access to the phpMyAdmin GUI to manage your mySQL databases. If your current web host is running cPanel this can be found inside of there.
If they don’t offer cPanel or phpMyAdmin, ask their support team to send you a backup of the WordPress database. You can find this inside your wp-config.php file.
Once inside of phpMyAdmin, select the database on the left, then click Export at the top. Keep the values untouched and click Go to download to your computer:
Once you have the database on your computer, congratulations you’re now ready to re-import to Name Hero (or your new web host).
Step 3 – Upload Your WordPress Files
Just like step 1, you’re going to use Filezilla, but this time connect to your new hosting account. You can use the default cPanel username/password to connect to FTP or create a new FTP account inside of cPanel.
Once you’re connected, you then want to take the files you originally downloaded in Step 1 and upload them.
When the files are all uploaded to your new account, you then want to import the database.
Step 4- Import Your Database
The first thing you want to do is create the database inside of NameHero.
You accomplish this by going to cPanel -> mySQL Databases -> Create New Database:
Make sure to note the new database name. Personally, I open my text editor on my computer and paste the name inside.
You then want to create a user for the database and assign a strong password:
Finally, you want to add the new database user to the new database and assign ALL PRIVILEGES:
When this is completed, you’re ready to import the database backup.
If using Name Hero, go to cPanel -> phpMyAdmin. Click on the database you created on the left and then the import button at the top:
You’ll use the “Choose File” option to find the database on your computer. Please note if it is larger than 50MB you’ll need to compress the file on your computer and try it as a .zip file. If it’s still to large, please submit a ticket to our administration team to manually import it using SSH.
Step 5 – Reconfigure Your wp-config.php File
The final step is to re-configure the values inside your wp-config.php file.
You can access this by going to cPanel -> File Manager -> Navigating to WordPress directory -> Editing wp-config.php:
You’ll also want to make sure ‘localhost’ is used in the DB_HOST value (some web hosts such as GoDaddy will use an IP).
Congratulations! At this point your WordPress website should now live on NameHero’s servers and you should be able to change your name servers over.
You can use the “preview link” sent in your welcome email to verify everything is working correctly. You can also Test Or Preview Your Website Before Changing DNS.
How To Move WordPress From Your Old Web Host
I filmed a step-by-step tutorial demonstrating all the above steps:
If you have any questions, feel free to comment below!
In addition, if you’d like our team to manually move your WordPress website, submit a new ticket with your current host’s FTP/phpMyAdmin credentials and we can provide a quote for our team to do it for you!
Ryan Gray is the founder and CEO of NameHero, one of the fastest growing independent web hosts in the United States. Ryan has been working online since 1998 and has over two-decades experience in Internet Entrepreneurship.
Thanks! This was a great help, especially with the video! I didn’t know where to start. I wouldn’t have attempted to migrate my website by myself if I hadn’t found your article.
Hi Ryan, Thankyou for including the video showing us through the process, super helpful.
I’m trying to connect on fileziller and it comes up with a notification saying the ‘server’s certificate is unknown’ and to ‘compare the displayed fingerprint with the certificate fingerprint you’ve received from your server administrator or hosting provider.’ Where do I find this fingerprint to be able to verify the match before hitting ‘trust the server certificate’.
Olga Prokopenko says
Thank you for the tutorial, learned a lot. However, what about DNS? The video does not cover the DNS settings. You need to point DNS of your domain from one hosting company to NameHero, but it’s nothing regarding it.