日志文章


2006-08-10

【笨笨出品】SQL查询的监听者:方便解决query过多或灵异事件

之所以写了这个东东,是因为之前我的论坛发生了灵异扣钱事件。。

一直不知道原因,后来想到监听所有的sql语句,最后才发现了原因所在,并因此有了这个简陋的监听器。。

使用方法:

先备份require/db_mysql.php
然后将包里文件覆盖进去。
修改
  if(1 || ( substr($sql,0,6)=="UPDATE" && (strpos($sql,"MEMBERDATA")>0) && (strpos($sql,"MONEY")>0)))
  //符合条件的,自动添加到文件里去。在这里增加要监听的条件。前面的1是强制监听所有记录

这里的条件,以满足监听要求。如果是为了解决query过多问题,就用这个默认的好了,能记录所有的查询语句

监听日志会保存在data/目录下,命名为sql_月日.log
比如今天是8月10号,则会命名为data/sql_810.log
一行一条记录,可记录 查询时间、文件、IP、查询语句

这样可以方便查看是哪些sql出现了问题,以便解决问题。

比如说是,以下是我的测试数据

Quote:

08/10/06 17:19:08   /zjoubbs/index.php   127.0.0.1   SELECT F.FID,F.FUP,F.TYPE,F.LOGO,F.NAME, F.DESCRIP,F.FORUMADMIN,F.ACROSS,F.ALLOWHTM,F.PASSWORD,F.ALLOWVISIT,F.F_TYPE,F.CMS,FD.TPOST,FD.TOPIC,FD.ARTICLE,FD.SUBTOPIC,FD.TOP1,FD.LASTPOST FROM PW_FORUMS F LEFT JOIN PW_FORUMDATA FD USING(FID) WHERE F.IFSUB='0' AND F.CMS!='1' ORDER BY F.VIEWORDER
08/10/06 17:19:09   /zjoubbs/index.php   127.0.0.1   SELECT * FROM PW_BBSINFO WHERE ID=1
08/10/06 17:19:09   /zjoubbs/index.php   127.0.0.1   SELECT * FROM PW_BBSINFO WHERE ID=1



呵呵

PS。当遇到首页查询失败时,如果是update pw_threads set hits=hits+1…………之类的语句过多,不用多说,直接将data/bbscache/hits.txt文件重命名,即可解决这个问题

开关位置:
在require/db_mysql.php里找到$_debug=1;
改成0就恢复正常了。改成1就开始监听了
db_mysql.rar


类别: 无分类 |  评论(15) |  浏览(4987) |  收藏
一共有 15 条评论
3212556 2006-08-11 16:10 Says:
Quote:
引用第14楼笨笨啊2006-08-11 14:25发表的“”:
…………整晚没关,这个量确实够大的


呵呵。

.......


谢谢,师父~
笨笨啊 2006-08-11 14:25 Says:
…………整晚没关,这个量确实够大的


呵呵。

只要开一会儿就够了的
笨笨啊 2006-08-11 14:07 Says:
Quote:
引用第12楼32125562006-08-11 12:50发表的“”:
昨天加上,产生了200多M的临时文件啊

…………你条件没分啊…………

说明你的查询量也挺大的,这个只要开一小会儿就行了
3212556 2006-08-11 12:50 Says:
昨天加上,产生了200多M的临时文件啊
主宰银河系 2006-08-11 11:48 Says:
嗯,这个是好东西啊,前来支持一个。
笨笨啊 2006-08-10 21:42 Says:
呵,当然,还要求有一定的sql基础
汉川水缘 2006-08-10 20:41 Says:
顶,有点高深,不太懂!
白色〾猎人 2006-08-10 19:51 Says:
赞!!!!!
Seac 2006-08-10 19:36 Says:
来支持了!
归路何方 2006-08-10 18:57 Says:
这个家伙就是个间谍啊,打入我军内部的那个
笨笨啊 2006-08-10 18:23 Says:
简单的说,就是当你的论坛发生一些很奇怪的事情时(如查询量极高,或金钱莫名地减少,或是别的一些现象),可以利用这个监听所有的sql语句,并进行分析,是哪个文件出的问题
bf500233 2006-08-10 18:17 Says:
不明白,能再多介绍一下吗?
jackzhu724 2006-08-10 18:12 Says:
地板还有没有??
3212556 2006-08-10 17:55 Says:
哈哈~~~
每次都板凳
boy5260 2006-08-10 17:48 Says:
沙发..........

汗,hits实例指的是我,嘎嘎,我的首页查询147个,后来用笨笨的这个工具才查出来!