PDA

View Full Version : Ran an SQL query, killed the forum


MadK
06-12-2010, 12:40 AM
Hey there,
Before I start I would like to say that I used digitalpoint's vB Optimizing guide right here (http://articles.digitalpoint.com/content.php?r=7-Optimize-vBulletin-4) and I am aware that it clearly states that anything can break at any moment when applying these changes, but it was actually a mistake on my part.

The thing is that I ran the following query:

ALTER TABLE post DROP INDEX userid, ADD INDEX userid (userid, parentid)And although my database uses a prefix, the query still ran somehow.

So I ran it a second time with the appropriate prefix, and it worked... until a few hours ago.


I am now getting e-mails from the vBulletin Database Error System similar to this;

Database error in vBulletin 4.0.3:

Invalid SQL:
SELECT userid from post where threadid='222' AND userid=12;

MySQL Error : Table 'forums.post' doesn't exist
Error Number : 1146
My forums now point to a non-existent table and I cannot come up with a solution.

I was hoping somebody here experienced enough in MySQL would be able to help me.

Appreciate the help and much success,
Thanks a lot!

robert garrett
06-12-2010, 04:42 PM
restore your backup database. You did back it up first didnt you?

Videx
06-14-2010, 12:44 AM
Of course he has backups. Everyone that runs a forum backs up their db daily.

Rafa-el
06-14-2010, 02:51 AM
Of course he has backups. Everyone that runs a forum backs up their db daily.

Are you sure? I bet that most of the forum owners never make backups before do something on it.

Marco van Herwaarden
06-14-2010, 03:24 AM
First check, with a tool like phpMyAdmin if the table "post" and/or "prefix_post" dop exist in your database.

Next step is to check your ./includes/config.php, does it still have the prefix set correctly?

If that is all correct, did you recently install a new modification or such that might not work with prefixes?

@post #3 & #4
How are you helping with such useless posts?

Rafa-el
06-16-2010, 03:36 AM
I think that you have may have the post_table since that query can't delete it, just check the DB tables and look if is there. If you haven't phpMyAdmin access you can grab a tool for handle your DB externally (a php script).

Now I don't think that this is caused by a mod but can be a reason so, remember wich mods do you have installed, also add this line in the config.php to disable all the hooks:
define('DISABLE_HOOKS', 1);

Just simple tips that can help you.

MadK
06-17-2010, 12:03 AM
Hey there guys, thanks for the help but since it was an Internal Server Error (which I forgot to mention at the very beginning of this post), I had it fixed by my webhost who also said that it was a mistake on their part. :)

However, for some reason, I still cannot explain the origin of this MySQL error because the post table never existed, it was actually forums_post but oh well, if it works, it works! :D

Videx
06-17-2010, 12:39 AM
I had it fixed by my webhost who also said that it was a mistake on their part. Glad to hear you recovered it.

Just so we can say "nyah nyah" to Marco, can we be assured that you are making daily db backups?

MadK
06-18-2010, 07:11 PM
Glad to hear you recovered it.

Just so we can say "nyah nyah" to Marco, can we be assured that you are making daily db backups?
Concerning the last few posts, I'll be honest with you! :D Before last year, I did not have the habit of making daily backups or even backups before I would modify the system. Ever since I lost my database because of you could say, ''reckless administration'' I make daily backups! :)

Had to learn the hard way, like many others, I am pretty sure! :)


Thanks for the help everybody, I truly appreciate it,
I wish you all true success in all of your projects,
MadK