一种怪异的导致数据库超时的原因
今晚本来准备写一下discuznt!论坛源代码的研究报告,但被一个事情给耽搁了。辽宁建设厅的服务器坏了,所以我在读研时给他们做的网站需要搬迁,但搬迁后网站不能用。于是王工就让我再帮忙搞一下。这个网站是三年前写的,可以说基本没什么架构,代码在我现在看来属于不忍卒读型的,面对这个我生下的孽畜,虽然我已经没有义务去帮这个忙,但想了想还是帮吧,毕竟让人家王工在沈阳请我吃过一顿烤肉。
现象是网站不能访问,空白页,我远程登陆了一下,初步结论不是网站本身的问题,可能是.net framework没有装,但是传上安装文件安装时系统提示已经装了,在这种情况下还不能解释aspx的文件,说明是IIS有问题了,看了一下IIS的属性,解释aspx的程序居然是.net framework 2.0的,而实际上服务器根本没装2.0,那个网站也只需要1.1的类库就行了。于是进入:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322目录,在命令行下用aspnet_regiis.exe –i命令重新把.net在IIS上注册了一下。再次访问网站,已经不是空白页了,但返回读数据库超时的错误,出现这个页面说明已经与IIS没有关系了。那很有可能是网站跟数据库之间的问题。查看web.config中的配置并没有发现什么问题,改链接字符串,改超时时间都没有用。我脆弱的心灵差点又崩溃,服务器上没有安装调试环境,也没办法跟踪。正他妈想放弃,偶然查看数据库文件,我靠,log文件居然达到了36G,我问王工,这个log这么大,你确认你能分清G和M这两个字母么?王工很委屈的说,我错了,是没分清,我备份这个文件花了4个小时!我苦笑不得,死的心都有了,他又说可能是前一阶段报名考试的人太多导致的。我想数据库超时的问题八成是由这个引起的,于是就分离了数据库,把log文件改了下名字,然后重新附加数据库,再打开网站,终于正常了,我为此花费了2个小时-_-!!。
由此可见,当网站超时时,除了设置链接字符串的超时时间以外,别忘了看看数据库文件是否忘了计划生育。。。。。国策当头,万勿掉以轻心啊






还没有任何评论。