mysql has gone away错误如何解决
我用codeigniter做的一个项目,里面有大量数据读取,更新操作,运行4个小时左右,就有mysql has gone away的错,
网上解决的办法好像是mysql_ping,
在codeigniter中如何调用mysql_ping,这个问题又要如何解决呢? 老大快来呀,我要撑不住了,mysql has gone away是不是再连接一次就可以???
我市在构造器里
function User_model()
{
parent::Model();
$this->load->database();
}
load的database,在函数里再调用一次$this->load->database();
是不是就重新连接了? 修改my.ini
打开my.ini 找到这一行,下面添加
#扩大缓冲区
max_allowed_packet=32M
保存后,重启MySQL,试试呢 这个问题与你数据库设置的wait-timeout有关系,除了pconnect之外,当一个数据库连接在你设置的wait-timeout时间之内没有任何操作,数据库就会强行关闭。你可以增大这个值,或者使用mysql自带的函数mysql_ping()在操作前进行校验,在CI中,需要你自己扩展一下 服务器的mysql,我不能修改他的配置,
我现在想
每次调用 我的insert_books 函数时
连接一次,
ci里连接用什么函数 去看源代码,用的无非还是mysql_connect 各位大哥,你们真是不给力压,
http://codeigniter.org.cn/user_guide/database/connecting.html
手册里的这个东东是什么呀
$this->db->reconnect(); 回复 7# wangjialei
呵呵,还是手册给力吆 回复 7# wangjialei
这个方法只是注销掉当前的链接,而没有重新连接 经过我今天一天测试,问题解决了,就是用得$this->db->reconnect();
页:
[1]
2