2016-08-04 14:44:50 2339次浏览 3条回答 0 悬赏 30 金钱

有个脚本需要执行很长时间 ,本地运行没问题,放到服务器上时 过段时间就出现 MySQL serve has gone away 错误

请问下 ,怎么Yii有没函数判断 数据库是否断开了的函数,判断成功后怎么执行重连MySQL?

最佳答案

  • Danmo 发布于 2016-08-04 17:41 举报

    用捕获异常的方式处理,如果有异常抛出,就重新连接数据库,不过这种方式治标不治本,最好还是能找出数据库宕机的原因

    1 条回复
    回复于 2016-08-05 11:22 回复

    嗯,知道原因了,请求curl的时候超过了MySQL的 wait_timeout 了。。服务器那边 wait_timeout 才设置了10秒 :(

  • 回答于 2016-08-04 16:27 举报

    为什么不想着去处理MYSQL为什么宕机反而是想着就算是宕机也要重新连接数据库呢?

    1 条回复
    回复于 2016-08-04 17:33 回复

    我这边做的是 只需要 一直执行,处理也可以,但处理完也是要继续执行代码。。所以想着干脆不处理,直接能重连的话就最好了

  • 回答于 2016-08-04 17:41 举报

    用捕获异常的方式处理,如果有异常抛出,就重新连接数据库,不过这种方式治标不治本,最好还是能找出数据库宕机的原因 多点一下就出现相同的答案,这点要修复下啊

    1 条回复
    回复于 2016-08-05 14:06 回复

    这个问题提的好,我尽快修复。

您需要登录后才可以回答。登录 | 立即注册
37660
等待激活

37660

注册时间:2016-10-31
最后登录:1970-01-01
在线时长:0小时0分
  • 粉丝3
  • 金钱980
  • 威望0
  • 积分980

热门问题