1月 252010
 

Discuz! info: Can not connect to MySQL server

Time: 2007-11-13 6:25pm
Script: /bbs/index.php

Error: Can't connect to MySQL server on 'localhost' (10048)
Errno.: 2003

Similar error report has beed dispatched to administrator before.

以上错误分几种情况说一下(首先您要确保您的服务器及服务器环境是正常的,装一个新论坛试一下就知道了):

1. 如果您是虚拟空间,出现以上错误,有可能是限制而引起,只有找您买虚拟空间的服务商解决,或是更换更好的空间
      
2. 有可能是攻击,攻击会导致服务器内存被占完,然后MYSQL数据库没内存用了,MYSQL就挂了,就会出现以上错误。

3. 有可能是程序出错,或是某个数据表出错,直接把整台服务器的MYSQL拉死了,然后出现上面错误。

4. 也有可能是服务器中安装的防火墙引起的。 Continue reading »

9月 112008
 

菜雨博客

今天买伞回来之后发现我放blog的虚拟机又出问题了,windows2003显示虚拟内存不足。于是我登录进去看,其他同样设置的机器原来都是一直好好的,为什么就是这个不行,而且这样的情况出现的不止一次了。重启,进入系统,非常慢,打开任务管理器,发现Apache的进程httpd.exe的内存占用竟然到了400多M,而且还在不停增加,难怪了。重启之后,现象一样,httpd.exe占用的内存不断增加,直到把机器拖垮。

上网搜索,很多的还是说是因为配置的原因,说是要将 httpd.conf 中的 Threadsperchild 和MaxRequestsPerchild做合适的配置。ThreadsPerChild的意思是系统启动时默认启动的等待线程数,用来等待处理客户的请求,MaxRequestsPerchild 指令设置每个子进程在其生存期内允许伺服的最大请求数量。到达MaxRequestsPerChild的限制后,子进程将会结束。根据很多人的经验,一般的服务器2G内存或4G内存,ThreadsPerChild 200~300,MaxRequestsPerchild 1000~3000。我用的是虚拟机,只划了512M内存过去,我不停的修改参数设置,大致知道了占用的最大内存会是Threadsperchild的3-4倍。我最后给自己的虚拟机的设置是Threadsperchild 50 ,MaxRequestsPerchild 256 。暂时还是有用的,但是长久我就不知道了,我看到很多人还是没有用的,又有说法是这个是Apache 2.2.4及其之下的一个bug。很不幸,我用的是APMSERV的集成包,Apache是2.2.3。我刚刚在发布上篇日志的时候就看到了内存又飙到了200多M。我的直觉告诉我服务器的这个问题肯定和wordpress有关,或者是它的一个插件或者主题引起的,另外一个CMS是DEDE,基本都静态页,应该没什么问题的。但是我现在很崩溃,这么细致的试还真没有时间。 Continue reading »