我用CI(CodeIgniter)开发了一个网站,之前一直正常,最近却经常提示:
Unable to connect to your database server using the provided settings.还有一个discuz论坛,上面就是提示error1203,具体的不记得了,就是max_user_connections超过了限制。按理说这种错误一般是数据库连接没有释放导致的,但是对CI不是很了解,一开始听说是自动释放的就没有写,最近被折磨得不行了,于是把所有$this->db->get的连接全部free_result()了。但是仍然提示这个错误。想请各路神仙帮帮忙,看看到底是什么原因?这个网站放在Linux虚拟主机上,配置已经是最高配置了,也是大空间商,他们告诉我max_connections是600, max_user_connections是40,说都已经算很高的配置了。而且网站都没有正式运营,同时在线最多两个人。昨天把所有连接free了,但早上打开仍然有错误提示。难道和session有关系?不明白。是不是我改完free_result()应该让空间商重启一下mysql?不知道这个连接是不是永久性的,pconnect是true的。而且我应该怎样track连接数呢?实在是被折磨得不行了,请大家帮忙出出主意,非常感谢!!

解决方案 »

  1.   

    LZ查查关于apache的设置,好像是和session的缓存有关系,缓存可以设置,具体是什么不是很清楚,以前公司也出现过这样的问题,后来改了一个配置 就搞定了!~
      

  2.   

    在config的database.php中,加一个数据库连接端口:
    $db['default']['port'] = "3306";get完需要写$query->free_result()释放这个数据库资源才可以http://codeigniter.com/forums/viewthread/73384/
      

  3.   

    ci 数据库配置持久连接改为false
      

  4.   

    6楼是对的,关键是pconnect改为false,这样我的问题就解决了。希望对后来人有借鉴。
      

  5.   

    哥们还在吗?我也出现这种情况,请问你是如何解决的,pconnect改为false不行
    谢谢