美文网首页
pymysql.err.interfaceerror: 0

pymysql.err.interfaceerror: 0

作者: 生活就是爱 | 来源:发表于2020-05-29 16:20 被阅读0次

    一、遇到问题

    工作中突然遇到问题


    1111.jpeg

    二、查找原因

    数据库默认的wait_timeout=28800,这个单位是秒,换算后是8小时
    也就是原来我的服务启动8小时后,就会被mysql自动断开,如果我没有重连机制那就真的是不能用
    经过查询日志,确实有连续8小时以上没有进行数据库操作了

    三、解决方案

    用下面的代码,使用前检查连接是否存在,断开的话会重连

    db = pymysql.connect(host='127.0.0.1',port=3306,user='user', passwd='pwd', db='db_name', charset='utf8')
    cur = db.cursor()
    sql = 'select * from table_name'
    db.ping(reconnect=True)
    cur.execute(sql)
    db.commit()
    cur.close()
    

    参考资料:
    pymysql.err.InterfaceError: (0, '')解决办法
    【Python】数据库异常pymysql.err.InterfaceError: (0, '')解决方案

    相关文章

      网友评论

          本文标题:pymysql.err.interfaceerror: 0

          本文链接:https://www.haomeiwen.com/subject/mtqfzhtx.html