Recently moved wordpress blog thepicky.com from dreamhost shared hosting to Media Temple Grid-Service(gs). I thought to document the host move, so that it would be helpful to someone else in the future.
Moving your sites to Media Temple (or other host ) involves some important steps, which included moving website content and databases.
Moving WordPress to Media Temple Grid-Service(gs)
1. Login to your current host (dreamhost) using SSH. Make sure you have SSH (shell access) enabled both in dreamhost and mediatemple.(SSH login credentials normally same as your FTP and only thing you have to enable it in your control panel or cPanel).
2. Transfer Content: Using SCP command you can directly copy wordpress content from your old server to the new one. This way you can safely skip the FTP download from old host and upload to new host. To do so, go to the root folder where you have your wordpress in your current host and execute the following command
scp -r * USERNAME@s#####.gridserver.com:/home/#####
Note: ##### is your grdiserver unique id and USERNAME is SSH username.
This command will transfer all of the files directly to your (gs) from the old host.
3. Backup Database: Backup your database using WordPress Database Backup plugin – WP-DB-Backup.
4. Create new database: Create a new mySQL database in your Media Temple Grid Server account.
5. Restore Database: Using import option import the .sql file into your newly created database.
If your database backupfile (.sql) is more than 10 MB, you have to import the database using command line. To do so, first upload the .sql file to /html. Use the following command in SSH and make sure you use the following command ONLY in the directory where the .sql file is.
mysql -udbUSERNAME -p -hinternal-db.s#####.gridserver.com dbDBNAME < file.sql
no space between ‘-u’ and the username
USERNAME – your db user name
DBNAME – your database name
6.Modify Configuration: Open your wp-config.php file (you will find it in root folder ), change the DB_NAME, DB_USER, DB_PASSWORD and DB_HOST as per media temple database you created.
8. Test WordPress: With the media temple unique Access Domain you can view your websites before you switch your DNS. You can access your website with the following temp url http://s#####.gridserver.com (##### being your unique server id)
7. Testing: You can test the full functionality by doing a small modification in DB(posting , editing and viewing the blog). Currently your DB entry is pointing your actual domain (yourdaomain.com), you have to do a small change in your database for testing. Update yourdaomain.com entry to temp URL http://s#####.gridserver.com (unique Access Domain) in wp_wt1npm_options (or wp_ptions ) table.
Note: Before changing the DNS from dreamhost to mediatemple, make sure to replace temp URL in the database with the actual.
8. If everything is okay, go ahead and point DNS to Media Temple nameservers.
- I don’t know why this happened, but I had to login my wordpress and update the permlink structure once (after the move), otherwise wordpress errored out when I access single page.
- Comment out WP_CACHE in wp-config.php initially, else you will see blank page when you access the site( make sure to remove the comment later)
This process worked for me. You might have other issues, which I did not experience while moving. If you have any questions let me know, will try to answer
hi, thanks for this post, telling us your experience…
now, i’m moving my WP website to spry.com …well, i’ve already move files, import DB and change the details in wp-config.php.
About your post, i don’t understand two things:
“Before changing the DNS to dreamhost, make sure to replace temp URL in the database with the actual.”
mmmm, what’s it that? where we can change the “temp URL” in de database ?
and… “Comment out WP_CACHE in wp-config.php initially, else you will see blank page when you access the site( make sure to remove the comment later)”
1)MediaTemple webhost has temporary URL (unique Access Domain url) for each site you create. You can use this temporary url to test your site before you go live. Refer to #7 above where to change.( You have to check your spry host abt the temporary url).
2) if you have wp_super_cache plugin, you might want to comment WP_CACHE initially. I ran into blank page when I access the site after the move, so I commented out WP_CACHE and site loaded instantly. I uncommented later.
Hope I cleared your doubts…
Very informative post. Thanks.
Will do the same soon as Dreamhost is down all the time plus very slow. And their support is the worst I have ever seen.
I have hosted web sites over 10 years and so far Dreamhost is the wors host I have come across.
Thank you so much for the tip about removing the wp-cache code in wp-config, I spent HOURS trying to fix the blank page issue and this worked!
Everything worked smoothly but I can’t make WP Supercache work again. If I uncomment the WP_CACHE section in the wp_config.php I see the blank page again and if I try to disable and reenable the cache from the WP control panel I see the blank page again…. any idea?
1. Comment WP_CACHE initially.
2. Delete the cache contents and Move wp_supercache from plugins to a different folder.
3. Check if the site loads properly, without wp_supercache plugin.
4. If everything is fine, move wp_supercache to plugins folder and enable it (plugin will automatically add WP_CACHE entry in wp_config.php file ).
Let us know if this works.
Hi, I have done everything correctly and am able to get to my install admin, but when i change the blog address url in wordpress to http://s#####.gridserver.com i am getting an error for the index page that says “Page isn’t redirecting properly”. Any ideas?
Thanks for sharing good information, i learn how to move wordpress here.
What stuffed me up is the DB_HOST – which is non-obvious. On all other servers I’ve used, even shared servers, its been ‘localhost’. However on MT it needs to be set to $_ENV[‘DATABASE_SERVER’]
You can find this under the Manage Databases > Global Settings > Your Server Info section.
Thanks for this info…even as old as it is! The reason I found it was because I just recently switched from a DV server on Mediatemple to a GS setup and everything worked flawlessly except now I can’t seem to update the plugins using the automatic updater. Could this be a permissions issue on some directory or is there confusion somewhere in my WordPress files? I should mention that I’m trying to run multiple WordPress sites under the same account by using the add-on domain feature of Mediatemple. However, I think the problem stems from the fact that there’s only one FTP user and it’s possible that the automatic updater doesn’t know where to download the files. Any ideas??
By the way, the reason why you had to re-do the permalinks was because your .htaccess file didn’t copy over. Sometimes FTP programs don’t know how to treat this file and it comes up as “hidden”. 🙂