月初,修改了一下
留言板的Spam处理机制,参考
原作者的留言板程序,增加了认证码机制;此前我通过修改程序,采用了关键字过滤机制进行spam防范,也基本能够满足需要;现在通过 [认证码机制+关键字过滤],算是基本解决了spam留言问题。
现在是可以对spam进行总结的时候了。
最后一个月的spam留言大约如下:
mysql> select FROM_UNIXTIME(dateline,'%Y-%m-%d') 'date' ,count(*)
-> from spambook group by 1 order by 1 desc limit 30;
+------------+----------+
| date | count(*) |
+------------+----------+
| 2006-11-07 | 535 |
| 2006-11-06 | 884 |
| 2006-11-05 | 791 |
| 2006-11-04 | 811 |
| 2006-11-03 | 852 |
| 2006-11-02 | 869 |
| 2006-11-01 | 851 |
| 2006-10-31 | 873 |
| 2006-10-30 | 901 |
| 2006-10-29 | 90 |
| 2006-10-28 | 538 |
| 2006-10-27 | 828 |
| 2006-10-26 | 874 |
| 2006-10-25 | 820 |
| 2006-10-24 | 785 |
| 2006-10-23 | 851 |
| 2006-10-22 | 771 |
| 2006-10-21 | 745 |
| 2006-10-20 | 800 |
| 2006-10-19 | 793 |
| 2006-10-18 | 756 |
| 2006-10-17 | 820 |
| 2006-10-16 | 707 |
| 2006-10-15 | 680 |
| 2006-10-14 | 685 |
| 2006-10-13 | 728 |
| 2006-10-12 | 654 |
| 2006-10-11 | 579 |
| 2006-10-10 | 596 |
| 2006-10-09 | 420 |
+------------+----------+
30 rows in set (0.31 sec)
最高的时候一天竟然有900多条spam留言。
据不完全记录:
mysql> select count(*) from spambook;
+----------+
| count(*) |
+----------+
| 42487 |
+----------+
1 row in set (0.00 sec)
我已经记录了4万多的spam留言。
最常见的50个留言者是:
mysql> select distinct(username),count(*) ct
-> from spambook group by 1 order by 2 desc limit 50;
+--------------+-----+
| username | ct |
+--------------+-----+
| 斑竹网站做的 | 902 |
| 李先生 | 653 |
| 鱼鱼 | 615 |
| mm | 565 |
| 网站建设 | 482 |
| 上海美术培训 | 476 |
| 朋友 | 463 |
| 张先生 | 454 |
| 机电仪器仪表 | 441 |
| 王先生 | 403 |
| 先生 | 341 |
| 气模 | 338 |
| 付先生 | 317 |
| 韦先生 | 287 |
| 六合菜 | 286 |
| 王惠 | 274 |
| 陈小姐 | 243 |
| 心情 | 240 |
| 网络白领 | 240 |
| 92dv.com | 234 |
| 刘先生 | 231 |
| 网页设计 | 221 |
| 世界之光 | 215 |
| 王建国 | 192 |
| 机票联盟网 | 188 |
| 张小姐 | 183 |
| 吴先生 | 178 |
| 无码短片 | 173 |
| 俊羽 | 163 |
| 周先生 | 156 |
| 潘先生 | 156 |
| 陈先生 | 146 |
| 赵智锋 | 145 |
| tryrrVV | 135 |
| 黄飞 | 134 |
| 郑先生 | 133 |
| 阿德 | 130 |
| Sara11 | 124 |
| 陈生 | 124 |
| 孙大庆 | 120 |
| 传世私服 | 119 |
| asasas | 116 |
| 用友软件优惠 | 115 |
| 飞翔摄影化妆 | 114 |
| markkk | 113 |
| 大工业 | 112 |
| 客服部 | 111 |
| 郑生 | 111 |
| sdds | 110 |
| 臣向 | 105 |
+--------------+-----+
50 rows in set (0.38 sec)
同留言版的Spam斗争到此告一段落,这些spam留言的数据量已经高达70M,准备一举删除之:
[root@eygle eygle]# ll spam*
-rwxr-xr-x 1 mysql mysql 9126 Dec 13 2005 spambook.frm
-rwxr-xr-x 1 mysql mysql 73481172 Nov 7 14:44 spambook.MYD
-rwxr-xr-x 1 mysql mysql 350208 Nov 7 14:44 spambook.MYI
mysql的删除非常迅速:
mysql> delete from spambook;
Query OK, 42487 rows affected (0.15 sec)
而且删除之后,表文件会立即被清空:
[root@eygle eygle]# ll spam*
-rwxr-xr-x 1 mysql mysql 9126 Dec 13 2005 spambook.frm
-rwxr-xr-x 1 mysql mysql 0 Nov 24 17:11 spambook.MYD
-rwxr-xr-x 1 mysql mysql 1024 Nov 24 17:11 spambook.MYI
Mysql上如果没有日志,要想恢复删除的数据是很困难的;如果没有日志,Disk上还没有覆盖,那么对操作系统非常熟悉还有恢复的希望;这个处理起来比Oracle要困难一些。不过如果有良好的备份,那么一切就不再可怕。
我们常常会梦想,如果没有spam,世界将会有多么美好?
-The End-