Arrgh!!! – An Upgrade
This is one of those very rare times I actually use exclamation points.
Well, it was not the fun thing to do. However, according to the release notes the upgrade would fix a critical security flaw and various other issues. Okay. I guess I’d better do it — and soon.
Should I mention that disasters always seem to happen at the most inopportune time? I performed the steps for an upgrade of the blog software. Went to upgrade the database and everything looked okay, except all the special characters (those beyond ASCII’s 128 standard characters) were all strange when I looked at the front page of the blog. In short, it was not displaying UTF-8 encoding correctly.
Uh, not good. That means lots of work to correct the improper encoding after I log in.
I try (notice I said “try”) to log in. It takes the username and password, and then the screen goes blank, that is, white with nothing displayed. The url shows that I am still on the login page. This is really not good. I try other pages, Nope — nothing. Nada. No dice. I now have no access to the Administration of the blog.
I hate this.
Try to troubleshoot. Dump the files. Reload. Rerun the upgrade. Nope — no fix.
Change the parameters for accessing the database in the configuration file. Does it connect — Yes, it connects because with invalid parameters it won’t connect.
Okay, change the password, maybe it got scrambled during the upgrade. Okay, it changes, but still can’t login.
Get into MySQL and use phpMyAdmin and check the database. It says the database has broken links in the indexed fields — not good.
By this time, due to reading, researching, and trying different things, it’s now 0300 hrs Saturday morning, and I have to prepare for a presentation on Sunday.
Bye — it’s broke.
I’m going to bed.
Get up at 0800 hrs. Try again. Read and research some more.
By now it is 1100 hrs, and I have gotten nowhere. I even tried rolling back the upgrade. No dice. Nothing works. By now I am worried that I may have to completely reload each and every post and page — plus all the comments. In prep for this I access phpMyAdmin and backup and download the database.
I also run the repair and optimize options on the database. It says everything is good.
How can my database be good, yet not return back the calls by the php script in the blog software. And, why am I hanging on login?
Okay, try deleting unnecessary (certain plugin) tables in the database. Still no workee. Time to quit. Got too many other things to do. Will have to wait until Monday.
Can’t work on it now, other things pressing.
Finally start at about 1300 hrs. Have a thought — what if the problem lies in the way the database got upgraded? Like — maybe some of the plugin fields in the tables are causing the problem? Also, what if, since the database is already setup as UTF-8, the [define] statement in the configuration file is conflicting with the database setup? After all, all my UTF-8 encoded characters do not display correctly.
So I access phpMyAdmin again in the MySQL administration portion of the host control panel. The [Options] table has a LOT, and I mean a LOT of old plugin entries that were never deleted when I deactivated and removed them.
I get it cleaned up and reset the software version number and database version to the pre-upgrade numbers.
Get back out and change the configuration file to remove the [define] statement.
Load all new and clean files for 2.5.1
Rerun the upgrade. Look at the front page of the blog. Hey, all my extended characters look normal.
Try to log in. It takes. The page title appears at the top of the browser screen and it very nicely says [Dashboard – WordPress].
Success. Thank the LORD!
So, what went wrong?
This one line:
This line created a conflict with the database setup and content and would hang the scripting software and not allow the characters to display correctly. It also wouldn’t allow access to the admin functions of the blog.
How many hours consumed by this one little line?
However, it wasn’t all bad. I learned a lot in a hurry about MySQL database administration and phpMyAdmin. I also learned a lot about what makes WordPress tick.
I couldn’t have posted on Saturday or Sunday anyway. Saturday I was preparing for Sunday. Sunday I was two hours away at my home church in Missouri presenting the mission and ministry.
See, not a total loss. In fact, I could look at it as no loss at all – just a learning experience.