为什么80%的码农都做不了架构师?>>>   

项目使用tornado作web框架,使用sqlalchemy作为orm框架.

错误a:

OperationalError:
(_mysql_exceptions.OperationalError) (2006, 'MySQL server has gone away')

错误b:

StatementError:
(sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back

错误a是因为mysql的连接到达了wait_timeout, 使用超时的连接就会报错gone away,

错误b是因为连接断开后,事务没有回滚,残留的锁导致后续的查询报错.

解决方案一:打开autocommit

sqlalchemy打开autocommit后, 就会停止使用事务,生成的查询语句立即执行, 防止了错误b.

解决方案二:

在所有访问数据库的地方加异常捕获,报异常时rollback

参考:

http://docs.sqlalchemy.org/en/latest/core/pooling.html#sqlalchemy.pool._ConnectionRecord

https://groups.google.com/forum/#!topic/sqlalchemy/qAMe78TV0M0

转载于:https://my.oschina.net/sukai/blog/879152

处理MySql连接超时引起的错误相关推荐

  1. MySQL连接问题【如何解决MySQL连接超时关闭】

    --MySQL连接问题[如何解决MySQL连接超时关闭] ------------------------------------------------转载 最近做网站有一个站要用到WEB网页采集器 ...

  2. java 502错误,Spring Boot连接超时导致502错误的实战案例

    1.问题描述 内部系统之间通过Nginx来实现路由转发. 但最近发现有一个系统,经常报502错误,每天达到上百次,完全无法忍受. 2. 原因排查 于是进行排查, 发现配置人员把连接超时时间(serve ...

  3. java中502错误原因_Spring Boot连接超时导致502错误的实战案例

    Spring Boot连接超时导致502错误的实战案例,错误,时间,客户端,站长站,原因 Spring Boot连接超时导致502错误的实战案例 易采站长站,站长之家为您整理了Spring Boot连 ...

  4. 如何解决MySQL连接超时关闭

    最近做网站有一个站要用到WEB网页采集器功能,当一个PHP脚本在请求URL的时候,可能这个被请求的网页非常慢慢,超过了mysql的 wait-timeout时间,然后当网页内容被抓回来后,准备插入到M ...

  5. MySql连接超时引起的生产故障

    吃饭期间,忽然收到线上告警,排查原因发现是数据库连接超时. 于是联系DBA,一番排查下来数据库的Master节点的宿主机出现了故障. 主从切换后,告警还没回复,业务不可用,继续看链路跟踪日志. 找链路 ...

  6. mysql 连接超时 wait_timeout interactive_timeout 简介

    最近处理一个web服务时,写数据库数据时,经常报"MySQL server has gone away",一查发现是我mysql的wait_timeout.interactive_ ...

  7. 【错误记录】GitHub 提交代码失败、获取代码失败、连接超时、权限错误、ping 请求连接超时 ( 查找域名对应 IP | 设置 host 文件 )

    文章目录 一. 报错信息 二. 解决方案 ( 查找域名 ) 三. 解决方案 ( 测试 IP 地址 ) 四. 解决方案 ( 配置 hosts ) 网上有很多类似的解决方案 , 给出了一个 hosts 配 ...

  8. mysql连接超时timeout问题

    mysql默认连接超时时间为8小时,需要设置长一些 第一种方式直接改my.cnfvi /etc/my.cnf[mysqld] wait_timeout=31536000 interactive_tim ...

  9. 记一次 Java 进程里面获取 Mysql 连接超时的问题排查(OOM)

    文章目录 一. 问题现象 二. 原因分析 1. 查询 Mysql 状态 2. 排查连接池问题 3.进程内存&栈分析 一. 问题现象    页面前端频繁出现 500 的报错,查看后端报错日志,发 ...

  10. Mysql连接超时(HikariPool)

    项目场景: 测试人员通过自动化脚本对系统的功能进行压测,然后服务端就出现了大量的超时.停止压测后,异常消失. 问题描述: 查看平台系统错误日志,可以看到在执行sql的时候,抛出以下的异常.字面意思就是 ...

最新文章

  1. C# 利用反射调用类下的方法
  2. python编码类型互转总结
  3. MySQL exists的用法介绍
  4. 复制Java文件打印流改进版
  5. 什么是微服务?为什么你要用微服务?
  6. 带负荷测试要求二次最小电流_开关柜设计人员如何选择合适的零序电流互感器?...
  7. android应用开发(21)---Activity介绍
  8. Linux 10分钟掌握Linux常用开发工具及编译的四个过程
  9. java环绕通知的应用_Spring之环绕通知
  10. 语音合成论文与韩国小哥“撞车”后续:英伟达“赶紧”把代码开源了
  11. 使用Git将本地文件夹同步至github
  12. 计算时间:一个C++运算符重载示例
  13. Java 正则表达式
  14. 如何下载网页的FLASH视频
  15. OSChina 周五乱弹 ——程序猿到底算不算歧视
  16. linux 监控微信通知,Prometheus + Altermanager实现告警微信通知
  17. 每日codingame小游戏练习[2021.3.29](python3入门学习之rstrip方法)
  18. 中华名将索引 - 第一批:廉颇
  19. 公司注册涉及前置审批和后置审批的经营范围有哪些(2019年上海最新版)
  20. SSM框架报错分析(一)——There is no getter for property named 'XXX' in 'class java.lang.String'...

热门文章

  1. 通用的分页存储过程(少量代码实现)
  2. C#入门详解(10)
  3. python2, 3环境变量配置(win10下)
  4. Asp.Net MVC Web应用程序中的安全向量
  5. eclipse jre 参数
  6. 字符串(strlen)
  7. DataSet,DataTable,DateView的关系和用法
  8. APICS与AX的Master Planning(一)--Phantom bill of Material 虚项
  9. WIN7 7100+TOAD最新版本9.7.2.5切换到SCRIPT显示注释的时候是乱码。表数据中文显示正常!求解决方案。...
  10. 用VS Code写 Python / Groovy / Kotlin