Now, because I still wasn't satisfied I had a "clean" board again, I installed a new phpBB 2.0.21 board into another directory of my site and set it up to use the same database and database user, (just a different prefix for the database tables so as not to overwrite the existing data, and then changing the prefix later to access the existing data.) This worked for a while until the new, clean and unmodded forums went live and someone attempted to log in with cookies disabled in their browser. Then I got an error message:
phpBB : Critical Error
Error updating session key
DEBUG MODE
SQL Error : 1146 Table 'kc_phpbb.phpbb_sessions_keys' doesn't exist
INSERT INTO phpbb_sessions_keys(key_id, user_id, last_ip, last_login) VALUES ('6a1c8e3e79e9d6b4c2cf4d5364b6a24b', 612, '463b806a', 1159036670)
Line : 229
File : sessions.php
This database error took down my forums for a whole morning for all users. I fixed the problem by copying the database table "tempdelete_sessions_keys" to phpbb_sessions_keys (tempdelete was the table prefix I used when I created the new board on the existing database.) I was able to replicate it by deleting the copied table and disabling cookies in FireFox and attempting to log in, which reproduced the error.
Anyway, what I learned was that even though I may have a clean board, my database is not what it should be. It was missing at least one table that the upgrade process, for whatever reason, could not create.
I have a set of tables created by the 2.0.21 installer that I can be confident have the correct structure for a phpBB 2.0.21 board but I don't know enough about phpMyAdmin or MySQL to use that to make sure the tables that have my actual data is correct for use with a phpBB 2.0.21 board - you know?
I did run a script on my database called "Clean Tables" that allowed me to remove any additions to the database that any mods may have made, such as tables that EasyMOD creates, but apparantly it doesn't add any tables or structure that is missing. Is there a script that does this? Or alternatively, is there a way anyone can show me how I can use phpMyAdmin to correct my database structure in case anything else is missing? Thanks.