I got the fire alarm phone call, AIM messages and email today from a client stating "The site is down!, WTF happened?!"
Well, after a little digging, it turns out one of the records in a table had been wiped clean, but without removing the row itself. So, I had the representation of data, but a bunch 开发者_运维技巧of empty fields. (needless to say I need to write into my code a catch for this.)
What my real question is, where can I figure out what happened? I've got access to phpmyadmin and that's about it. I found some access logs on in the root directory of my server, but that just tells me the client was in the admin area I built editing that record, I'd like to know specifically what they did that made all of the data go away. (what query was run etc...)
Is it possible without real server admin access? Is there a neat little php to mysql class that returns data like this?
Thanks in advance. -Jascha
If you're not logging queries, then you're not logging queries. MySQL theoretically is capable of keeping a log; it's all dependent on your server configuration.
If the access logs contain things like POST attributes, then perhaps you can recreate the chain of events. Otherwise, your lesson is learned: log, log, and log some more.
精彩评论