Well, not on this blog .. sorry .. utoh .. are you experiencing problems with this blog too??
I hope not .. I have moved 5 blogs now from my provider host #2 to my provider host #3. I think I can safely document the details of how I accomplished this. I did not take any screen capture pictures, and there is no audio or video accompaniment to this blog entry.
Blogs that were moved were as follows:
I moved from a regular account at GLOBAT.com to a reseller account at ACE-HOST.net …
WARNING: These are NOT official instructions on how to move your blogs from http://globat.com servers to http://ace-host.net servers .. if that is what you are looking for – try going to http://wordpress.org/support/ and search their forum for help instead.
Rather, this is the tale of HART’s attempt to remind his “future-self” with instructions how to move blogs from one server to another – in case he ever has to do this again!
The first blog moved (newmoonscribbles.com) took 5 days – due to problems that were unknown to me, in the search engine differences of the MySQL databases .. InnoDB versus MyISAM. Also, I screwed up trying to fix the differences and came up with huge permission and .htaccess issues.
The second blog moved (hart-empire.com) took me 5 hours to move. I was planning to upgrade this blog to version 2.0 and was required to upgraded a few plugins. I was upgrading one plugin that recommended emptying the table in the database .. well, I accidentally deleted it instead. I ended up not being able to fix, and just deactivated the plugin and dump the tables and find an alternate solution (it was the Friends-Rss-Aggregator plugin) and, by the way – I didn’t upgrade to wordpress 2.0 either.
The remaining blogs (on curlingblog.com) were all moved in 45 minutes – total time. It was easy because all blogs were sharing the one database.
Naturally, in all cases, time not included was the actual FTP time to upload files and download files from / to my computer.
How I moved My Blogs To The New Servers
I made a backup of my mySQL databases
I basically followed the recommended guideline at this URL … http://codex.wordpress.org/WordPress_Backups
* Started with the “Simple Backup” section
* went into myPHPadmin
* selected databases
* clicked on my particular database
* clicked on top button “Export”
* Ticked each of the following:
(a) Structure / ADD Drop Tables
(b) Data / Complete Inserts
(c) Save As File / (left the __DB__ as shown)
I made a backup of my WordPress files
Basically, I use WS_FTP as my ftp program, and copied 100% of all the files from the old server onto a similar “mirror” directory that I keep on my own hard drive. Although I ticked the ‘ASCII’ field, I also ticked the ‘Auto’ box so files are transfered in both ascii and binary modes. I also copied over hidden files, like my .htaccess file. Some programs show that and others don’t. For me, my WS_FTP is the LE version and in the file field I just enter *.* and the files will show up.
I changed the NameServers on my domain
I maintain control of all my domains through one easy access. I just go into the ‘Manage Domains’ feature, unlock the domains, and change the nameserver 1 and nameserver 2 of the old host provider to the new host provider. Afterwards, I lock the domains.
For some reason, I can instantly see the changed servers within 2 hours. I don’t know why .. maybe it’s a cookie? Anyway, I see my domain on the new server … other people see the old server … and within 48 hours everybody sees the new server.
I made a 1-page .html webpage to let everybodyknow that I was moving .. and uploaded that picture in both the old host location’s root directory and new location’s root directory.
I created a new database and user on my new host server
My old server had a ‘database’ and ‘username’ .. but my new server uses a prefix for each .. so, it’s ‘accountuser_database’ and accountuser_username’ .. I created a new database and a new user. Then, I had to make sure that the user had “ALL” permissions to access the database. I had problems on an earlier conversion, where I wasn’t really paying attention. The permission screen looks like…
Permission: [box1] ALL [box2] Other stuff ….. // be sure to tick in the [box1] BEFORE the ‘all’ field, not after!
Different Engine Problem = InnoDB vs MyISAM
This brought me great aggrevation trying to restore my database .. But it ended up being that all I had to do was load my “databasename”.sql file in notepad and do a REPLACE ALL with…
I FIND ALL OF THE FOLLOWING:
ENGINE=InnoDB DEFAULT CHARSET=latin1
AND REPLACE WITH THIS STRING
Copy Paste my .sql Datafile into the mysql datase
In go into my phpmyadmin and select my database name. Then, at the top there is a button SQL – I clicked on it. There is a field to post stuff in and ‘GO’ button. Someone told me that you shouldn’t copy/paste more than 1MB of data text into there, so I had to copy/paste in sections … I ignored the top part of the databasename.sql file in my notepad editor.
Each time .. after you copy/paste and click GO – you should see ..
Your SQL query has been executed successfully:
The content of your file has been inserted. (: 2585 Instructions)
Checking my REAL location of the new site
I probably should have known this, or know where to find this information, but what I have been doing is just re-edit my wp-config.php file with the new variables (name of new databases, new username, new username password, etc) and then rename my ‘moving.html’ index file .. and just try accessing my website… Naturally, I will get an error message like this:
Warning: main(/home/empire/public_html/wp-includes/wp-db.php) [function.main]: failed to open stream: No such file or directory in /home/empire/public_html/wp-settings.php on line 59
Fatal error: main() [function.require]: Failed opening required ‘/home/empire/public_html/wp-includes/wp-db.php’ (include_path=’.:/usr/lib/php:/usr/local/lib/php’) in /home/empire/public_html/wp-settings.php on line 59
This tells me two things – the path of the old host and the path of the new host …
* Go into your database with myphpadmin
* on the left site – click on the table (databasename)_options
* click on the top button BROWSE and scroll down to sections that looks like old paths (e.g. fileupload_realpath) etc
* click on the pencil/edit icon to edit that part so the ../wp-content/ is what it should be (see the error page screen!)
Second Last Step – FTP –> The images
Although I had originally uploaded the files from the old server to the new server, I basically FTP’ed it from the old to the server in Binary mode – and then uploaded the files in ASCII mode to the new server from my computer. Now, I just go into my files and for all the images everywhere on my site, I just FTP it in BINARY mode with my WS_FTP program. (I just do a file selection *.jpg *.gif *.png etc etc … it’s the same for the other stuff that might be there ..mpg, .mov, .mp3 etc etc .. these are also re-uploaded in BINARY mode ..
Last Step – Permalinks
When I first created the new accounts, there was a default .htaccess file. Once the blogs were restored, I noticed that the permalinks did not work all of the time. So, I renamed the default .htaccess file to another name and then went into my blog’s admin OPTION / Permalinks and clicked the button to update the permalinks and the .htaccess file.
I CROSS MY FINGERS AND PRESS MY LUCK!
They all seem to work fine – today – for now. I guess I did everything in the right order and am happy now! Call me Homer!