JPhenow

Using the hacker blogging framework.

Moving a Wordpress Install From GoDaddy to Dreamhost

I’d say this took some good amounts of research but, it wasn’t too hard. I figured an article that explained the whole thing might be nice to have laying around for someone someday.

I take no responsibility if this screws with your Wordpress stuff or if things don’t work the way you expect. You follow the instructions on your own risk

That said I performed this migration about a week ago so they should be relatively accurate. Just be careful and be prepared to mess around with settings and what not on your own in case my description isn’t exactly what you need for your specific migration.

Here’s what I started out with at the beginning of my endeavor to move back to Dreamhost:

  • An account with GoDaddy that included hosting and domain registration
  • An installed and working version of Wordpress

Now we’ll start out with the preparation of moving Wordpress.

  1. Sign in to your GoDaddy account and proceed to “My Account”
  2. Click on “Hosting Plans” under “My Products”
  3. Select the account you’re moving Wordpress from
  4. In the top right corner of the pop-up select “Control Center”
  5. Click on the “Database” area (towards the bottom of the accordion)
  6. Select MySQL option - We’re now going to get the MySQL database back-up (Don’t worry you shouldn’t actually have anything downloaded yet)
    1. For the database that is matched up with your Wordpress install (Should have a description similar to your Wordpress title name) click the little pencil on the far right of the table
    2. Click on “Password” and set it to something you can remember for 5 minutes ;) write it down if not **Must have one capital letter and one letter**
    3. Then look at the lower section labeled “MySQL Database Information” and copy the Username
    4. Finally click on “Open Manager” in the top right
    5. Now use the Username and password we just got from the past few steps (6.2 & 6.3)
    6. Alright now you can select ‘Export’
      1. Here, just select the database name (under “Export”) that we signed in under (not ‘information_schema’). The database you export will probably contain lots of fields with the prefix ”wp_
    7. Click the “MySQL” radio button to be sure it exports as a MySQL document
    8. Check the box to ‘Save as file’ and I personally cleared the box for ‘File name template’ and set compression zipped
    9. Now save this file in a folder let’s call it “wordpress_migration”
  7. Now open up an ftp client or ssh if you’re like me and hate ftp
  8. Go to the folder where Wordpress is installed and go to “wp-content/themes” and copy out any or all themes (copy their entire folders) you intend to use in the new Wordpress install
  9. Also inside “wp-content” be sure to copy folders for any of the plugins you use
    1. I would recommend placing these copied folders into the wordpress_migration folder we talked about creating
  10. Return to “My Account” on GoDaddy.com and select your domain registration product - this will launch the domain manager
    1. Around this point I’ll say you should make SURE you have everything off that site’s ftp that you want to keep
    2. Select “Nameservers”
    3. Select “I have specific nameservers”
    4. Under Nameserver1 copy NS1.DREAMHOST.COM
    5. Under Nameserver2 copy NS2.DREAMHOST.COM
    6. Under Nameserver3 copy NS3.DREAMHOST.COM
    7. Back to “My account” under GoDaddy.com
    8. Select “Manage my domains”
    9. Check your Wordpress website and click “Locking” towards the top
    10. Uncheck “Lock domains”
    11. Along the row your domain is Click the little icon of people (I’m not sure what it looks like) and make sure you turn off private registration
    12. Click on the little yellow “D” then slecect “Contacts”
    13. Copy down the administrator contact or change them all to ones you know
    14. On the page we reached in (10.11) select “Send by email” under “Authorization code” which is listed under “Expiration date”
      1. Leave this email in your inbox as you’ll need it to transfer to DreamHost
  11. Sign up at Dreamhost.com with the plan you see fit. You get a lot with every plan - even the cheapest
  12. I selected to transfer the domain for free with my sign up for an account - use the authorization code we got in step 10.13
    1. You should start getting emails from both GoDaddy and Dreamhost in the next several hours to a few days on the transfer - I know things like should be instant I agree, I’m very impatient when it comes to running web servers and what not. Just wait a day or two before you start freaking out. If it’s getting worrisome start up a live-chat with Dreamhost associate. Those chats usually fix my problems if we did miss something.
  13. Luckily Dreamhost is pretty quick about letting you access your hosting stuff so you can at least start migration
    1. If you’d like to put Wordpress on a subdomain - I generally prefer that - go to domain management in Dreamhost and add a subdomain by naming it subdomain.yoursite.com
    2. Select MySQL Databases along the left panel and create a database named something of your choice (I don’t specify a name because Dreamhost has a large server for MySQL, which means you can’t name it something obvious like WordPress or temp). I named mine domainname_blogname. The rest of the options are just for creating a domain for where to access your databases - I’ll refer to the site as mysql.yoursite.com (remember your credentials for logging in)
      1. Open a new tab and migrate to mysql.yoursite.com
      2. Log in
      3. Unzip that file we exported from the old MySQL database
      4. Open the resulting file in a text editor that has find all/replace function (NOT  WORD)
      5. Find all information_schema and replace with temp
      6. Save as a different file than what we opened in case there’s an accidental probelm
      7. Return to  PHPMyAdmin (Probably mysql.yoursite.com)
      8. Select import
      9. Select the file we just saved
      10. Should be successful - if not send me an email or leave a comment
        1. Some of this last stuff is being remembered so I’ll help with this last stuff if its not working well
    3. Go to “One Click installs” and install Wordpress on your domain/subdomain of choice **DO NOT open the site on a browser yet**
      1. Using FTP or ssh log into your hosted site (setup ssh/ftp users under “Users”>”Manage Users”); (If you can’t login using your site URL yet because its still transfering click “Account Status” in the top right corner and copy the “Web Server” then your server is servername.dreamhost.com)
      2. Edit wp-config.php
        1. Set DB_NAME to the name its listed under “PHPMyAdmin” AKA “Dreamhost’s MySQL Manger” - probably 3 letters and a bunch of numbers
        2. Set DB_USER to the user you set when you setup the databases at step 13.2
        3. Set DB_PASSWORD to the password also setup in step 13.2
        4. Set DB_HOST to the URL set in step 13.2 - something like mysql.yoursite.com
        5. Set $table_prefix to ’wp_’
        6. Save the file in the same spot you found it
        7. Now copy all of those plugins and themes in their corresponding spots “wp-content/themes” & “wp-content/plugins”

If things aren’t working for you tinker with where you think the problem is and let me know what I maybe listed on here incorrectly. This should be all you have to do though. Be prepared to play around with fixing stuff though - doesn’t always work quite perfectly. The toughest and most error-prone part will be the database migration.

I hope this helps for any of you trying to escape the horrid wrath that is GoDaddy. Perhaps more tutorials to come as I try to set up a good spot for my git repositories.

Comments