upgrade to wp 2.2.2 from 2.0.2
this post applies to people who are using yahoo!’s small business webhosting package and has wordpress installed as the blogging software and who cannot wait for yahoo! to do the upgrade.
i’ve read in the wp forums that yahoo!’s installation of wordpress would be stuck at version 2.0.2 for a while. being an impatient person, i decided to do the upgrade to 2.2.2 — as of this writing, the most current version — by myself.
the following is how i performed the upgrade for my webhosting package. i did this twice already — on a fresh blog installation and one that i use for testing purposes. it may not work for you so take precautions and do the backups. if you’re really on a yahoo! small biz webhosting package, it would be a snap to create a test blog first and use that as a guinea pig like i did. you can always deactivate it later.
a little research first. the minimum requirements of wordpress 2.2.x are:
- php version 4.2 or greater
- mysql version 4.0 or greater
and yahoo! webhosting has:
- php Version 4.3.11
- mysql 4.1.14
- mysql client api version 3.23.49
nice. so it should work.
next, visit the upgrading wordpress extended page for detailed instructions. bookmark it. i read it twice. you should too. some of the instructions differ only a little bit to the steps i took mainly because of the way yahoo! setup wordpress in their system. i’ll summarize wp’s instructions here and i’ll be injecting my notes (in italics) in between those instructions. do not skip a step or else you will be asking for trouble.
1. backup your database
2. backup all your wordpress files
3. verify the backups
4. deactivate all your plugins
5. ensure that the first four steps are completed
6. download and extract the wordPress package
7. delete the old wordpress files but do not delete the following:
- wp-config.php file;
open the wp-config.php file and delete the line that says:Define(’WP_CACHE’, true); //Added by WP-Cache Manager
- wp-content folder;
but delete the wp-content/cache folder and the wp-content/plugins/widgets folder and leave the rest intact
- wp-images folder;
i do not have this folder but i do have a wp-content/uploads folder which i did not delete - wp-includes/languages/ folder — if you are using a language file, do not delete this folder;
i wasn’t using a language file so off this goes - .htaccess file — if you have added custom rules to your .htaccess, do not delete it;
i also do not have this file - custom content and/or plugins — if you have any images or other custom content or plugins inside the wp-content folder, do not delete them.
8. upload the new files
i noticed that there wasn’t a wp-config.php file that came with the new files so overwriting the one that’s already on the server is a non-issue
now here’s where it gets a bit different and sticky. on my first try, i encountered several “access denied” errors when i ran the wordpress upgrade program. what needed to be done was to give the mysql-registered user of the blog additional access privileges. there was a post in the wordpress forums about replacing the db_user and db_password in the wp-config.php file with the yroot username and the yroot password. i had a problem with this because it appears that the passwords are hashed into hexadecimal numbers. i had to do it another way.
i had to dive into the mysql database and change the user privileges using phpmyadmin. just note down the db_user entry in the wp-config.php file. the next word beside it in single quotes is the username that is stored in the user and db tables in the mysql database. be very careful when messing with the mysql database. it’ll be something really serious if something goes wrong. you will not be dropping/deleting or inserting/adding any entries. you will just be updating/changing one record in each of those two tables. to summarize it a bit:
- open the mysql database

- browse the user table and look for the username you took note of above

- open the record for that user to edit it

- change all the boolean entries for that user to ‘y’ and click ‘go’

- browse the db table and look for the username you took note of above. the screen shots would look essentially the same. only the table being opened is changed
- change all the boolean entries for that user to ‘y’ and click ‘go’
note down which fields you’ve changed because you’d have to change it back once the upgrade process is complete.
i had to use opera to access phpmyadmin. apparently my firefox doesn’t like frames. i have also read that you can also use internet explorer.
9. run the wordpress upgrade program
10. update permalinks and .htaccess
11. install updated plugins and themes
12. reactivate plugins
13. review what has changed in wordpress
these are the steps that i took to upgrade two of my wordpress test blogs. i’m still testing those two sites and so far, everything’s good. i took a look at the logs and i’ve had only two warnings for each of those test blogs.
once i’m satisfied that everything’s ok, i’ll upgrade this blog.

21 September 2007 6:07 am at 6:07 am
[...] grant alter table privileges to the DB_USER. Since I didn’t have grant permissions, I had to modify the mysql.user table directly. Thanks goes to Alan Guilan for the [...]
22 September 2007 12:28 am at 12:28 am
Thanks for the detailed procedure. One question though:
You mention .htaccess. I can’t even see that file on Y! and I’m told that Y! does not let users touch it. How did you get around this?
Once again, thanks for your efforts. I know it takes a lot of time and dedication to write something like you did, and I’ll bet a lot of folks really appreciate it. I do.
22 September 2007 6:25 am at 6:25 am
you’re welcome.
in my post, i mentioned that i do not have it. that is not entirely true. i cannot see it via ftp but it is somewhere there, apparently, accessible via manage - file. it also notes that the .htaccess is for rewrite rules. the contents were (v2.0.2) and still is (v2.2.2):
# BEGIN WordPress# END WordPressto be honest i did not have a reason to touch it so i never did.
12 October 2007 1:12 pm at 1:12 pm
Hi Noel,
Well, I followed your procedure to the letter and in the order you wrote. Unfortunately I was not as successful as you. I’ll try again tomorrow.
Here are some comments about your procedure. (Everything is in there, just that folks like me tend to execute instructions line at a time, and if there are things to watch out for that are not explained until after the instruction, we lose.) Please take them as constructive comments and not as complaints.
Step 1. backup your database
I wasn’t sure which databases to back up. I have mySQL, my blog, and 3 phpmyadmin databases. Because I was doing this on a test blog, I didn’t bother to back up anything (nothing to back up!). Also, wasn’t sure if I should use the phpMyAdmin or wp-myadmin to do the backup.
2. backup all your wordpress files
Wasn’t sure exactly which wordpress files you meant. I had some in my testblog folder and some more in my phpmyadmintest folder. Also, wasn’t sure how to back up these. I assume simply by ftping them to my computer. But again, in this test blog I just shined it on.
Step 6. download and extract the wordPress package
Simple enough. I would have added something like, “from wordpress.org” or wherever they are stored (can’t recall right now).
You might tell the reader to delete the wp-config.php file if it exists so that it doesn’t overwrite the one on the server during a later step.
Step 7. delete the old wordpress files but do not delete the following:
Maybe you could state that the easiest way to do this is to use the Yahoo File Manager because it lets you edit files (something you’ll have to do down the road a bit).
Probably would be a good idea to state that the files to be deleted are those at the host, not the ones that were just extracted.
Sometimes it’s better to specify exactly what to delete rather than specify what not to delete. (I didn’t screw this up but I was constantly rereading it to make sure I understood.) For example:
a) Using the Yahoo File Manager, locate the folder that contains your blog files and delete all the files inside /wp-admin and the folder itself.
b) Delete the files inside wp-content/cache and the cache folder (if it exists).
c) Locate /wp-content/plugins/widgets and the widgets folder (if it exists), but do not delete anything else inside /wp-contents.
d) Locate the /wp-includes folder.
e) If it contains a languages folder and if you are using a language, delete everything inside wp-includes EXCEPT wp-content/languages and the files it contains.
f) If it does NOT contain a languages folder or if it does and you are NOT using languages, delete the entire contents of wp-includes and the folder itself.
g) Now delete all the remaining files (not folders) in your blog folder EXCEPT wp-config.php. DO NOT DELETE WP-CONFIG.PHP.
h) Open wp-config.php for editing and delete the line that says:
Define(’WP_CACHE’, true); //Added by WP-Cache Manager
i) Save wp-config.php.
Etc.
Step 8 says: Upload the new files.
Consider saying something like:
Using an ftp program, upload the previously extracted WP files to your Yahoo blog folder.
Now here’s what really confused me. Move the part that starts with “Now here’s where it gets a bit different and sticky…” and ends just before Step 9, move that whole bunch, with screen dumps, to AFTER “Step 9, so it reads,
Step 9. NOTE: This step can be a bit dicey” (or something like that)
…then your explanation, with all the rest of the description and screen dumps
being sure to mention about noting which privileges you change BEFORE you give the instruction to actually change them. Note that this is necessary because they must be returned to their original states after the upgrade has completed successfully.
…then “Run the WordPress upgrade file by entering the following in a new browser window: http:////wp_admin/upgrade.php.
And so on. I think if you add those changes, or something similar, then folks like me will have been warned BEFORE they blindly “execute” the instructions and possibly screw things up.
Like I did.
Oops!
In my case subsequent attempts to run the upgrade.php file failed, WordPress said:
No Upgrade Required
Your WordPress database is already up-to-date!
Uh, wrongo! My blog was boogered. Not to badly, but boogered beyond the fix-capabilities of a newbie like me.
Anyway, it’s back to the drawing board for me. I’ll get it right. Please don’t take this post as a gripe, I just thought a couple of changes here and there would add a lot to an already well-written and illustrated procedure.
Oh, and by the way, am I glad I ran this on a test install like you mentioned instead of the actual blog! At least I did something right!
12 October 2007 8:47 pm at 8:47 pm
dude, your comment in itself is a great post! i will take your advise and try to be more detailed. besides, i would need it too.
i would expect to do an upgrade in the near future and will do a step by step.
thank you for the comment. it is always for the better.
13 November 2007 12:22 am at 12:22 am
Thanks for the post. I recently upgraded on yahoo and have a feeling screwed something up bigtime but I’m trying to see if I can at least fix it.
My big issue right now is that all my links keep redirecting when you try to go “into” a post.
I read to update your permalinks, but I have no clue how to do that and am not sure if it’s my theme that’s causing the problem.
15 November 2007 6:22 am at 6:22 am
hello portorikan,
i’m not sure what you mean by “keep redirecting when going into a post”.
the permalinks: i have this plugin by yahoo called customizable permalinks. i’m not sure if you have it enabled or installed. it may be a good idea to check. if you don’t have it, then that may be causing your permalinks problem.
28 November 2007 8:39 pm at 8:39 pm
Thanks for the efforts you folks have made to compensate for the terrible service of Yahoo in not supporting Wordpress upgrades better.
I’ve been following these guidelines to upgrade to 2.3.1 and am having a problem, mostly I think, due to the fact that my FTP session keeps getting dropped. So, I have no clue whether all the files are in the right place. I think it’s Yahoo’s FTP server, because if I keep trying, eventually it can connect for a while. Then in the middle of a directory upload it fails again… “Maximum number of simultaneous connections already active. Very aggravating. I’m using Filezilla. Maybe there’s a setting I can use in Filezilla to correct this. Or maybe there’s a better FTP client, but so far, I like it. Except now.
When I think I’ve got all the files in place, and run the upgrade.php I just get a blank screen. No clue what’s causing it. I wish WP was easier to work with, too.
Again, thanks for all your help. Just hoping for a clue so I can get my site back online. Unfortunately I started this process before the advice to use a test site. So, until I get it working, I’m sunk. I may just start a new install and import the DB at least to recover back to where I was.
29 November 2007 6:54 am at 6:54 am
hi scott,
i have a gut feeling that’s in the file transfer that’s mucking up things. i have been using filezilla for a couple of weeks now and i experience that “maximum number of simultaneous connections…” message as well. apparently the ftp server of yahoo doesn’t link too many connections so i just reset the settings in filezilla to only one (1) connection to the server. so far it works ok.
you can edit this in the filezilla settings - transfers - maximum simultaneous transfers and set it to 1.
i have been studying the move to wp 2.3.1 and i have — more or less — set to do it sometime during the christmas break. currently, i don’t find any security-related reasons to make the move asap. but i would like to see how fast the new ajax thingy works.