您的位置:首页 > 编程语言 > Python开发

解决Python访问mysql数据库时候的“MySQL server has gone away”

2012-06-02 13:36 621 查看
解决Python访问mysql数据库时候的“MySQL server has gone away” - Jimmy的日志 - 网易博客

解决Python访问mysql数据库时候的“MySQL server has gone away”

2010-07-12 23:43:51| 分类:
语言编程
| 标签:

|字号大中小 订阅

今天进行cdn日志分析程序执行了近13个小时-_-!!不是我程序慢,实在是文件太大了17G的压缩文件,磁盘是sata盘,主机是2003年的DL320服务器。。。。。。
程序数据分析完毕后居然抛异常报错如下:
_mysql_exceptions.OperationalError
(2006, 'MySQL server has gone away')
<traceback object at 0x2aaaaad16d88>2010-07-12 22:43:40
检查mysql服务器设置发现,超时时间为8小时。但是我的程序执行了13个小时。。。。。。。杯具了。。。
mysql> show variables like '%wait_timeout%' ;
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| innodb_lock_wait_timeout | 50 |
| table_lock_wait_timeout | 50 |
| wait_timeout | 28800 |
+--------------------------+-------+
3 rows in set (0.00 sec)
唉,原来是程序与mysql建立链接后空闲时间太长,被mysql关闭掉了。

之前是程序一启动,打开与数据库的链接,每分析完一个产品的数据,将结果插入到数据库中。由于我的这个产品文件太多了,导致链接空闲时间太长,超过了最大超时时间。。。。。
修改了一下程序,当日志分析完毕后再打开与mysql数据库的链接,且当使用完毕后关闭链接。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: