MySQL版本:5.0.82

测试环境中,开发人员告诉我,数据库无法insert插入提示 lock wait timeout;

第一印象是被某个语句锁住,多次执行show full processlist 查看对同一个表执行的操作,查看 show engine innodb status\G  只显示被锁住的语句,未显示被哪个语句锁住(在官方5.5版本中同样也是显示这样的情况,在mariadb分支中,显示的信息比较详细!);

这个时候采取的办法是打开 innodb 监控器,innodb_lock_monitor 16s 检测一次,在测试程序的时候仍然一无所获;此时我们只能开始怀疑 os问题,cpu负载,磁盘IO;由于网络是隔离的,起初怀疑网络原因,导致连接经常断掉,调整为同一个网络仍然无效;后来将数据全部mysqldump出来(这样排除了磁盘未损坏的问题,至少能读取)

这种情况只能去怀疑程序的问题,java 采用连接池,当初怀疑某个未commit的线程被复用的问题;这次打开了 general log; 显示的格式为: time   thread id      SQL语句;这次我们有较大的收获;通过比较commit 与 set autocommit 个数不同,对应到具体线程,即可知道哪个线程未提交事务;这个时候剩下的就是让开发人员修改代码啦。

小结:对于官方原版的数据库。5.5 及以下版本的锁信息 显示的是不全面的,可以的话切换为mariadb版本;针对锁信息的查看,可以使用5.5中新功能:performance_schema ,这个锁问题很方便;general log 要好好利用,他是诊断故障,测试性能的救命稻草!!

mysql常见排错_MySQL常规日志排错相关推荐

  1. mysql qpstps测试_mysql操作日志

    关于 mysql操作日志的搜索结果 回答 增量备份的原理就是使用了mysql的binlog日志.本次操作的MySQL版本为5.5.40 for Linux (x86_64).增量备份要确保打开了二进制 ...

  2. mysql ib_logfile 数量_Mysql 事务日志(Ib_logfile)

    mysql的innodb中事务日志ib_logfile(0/1) 概念: 事务日志或称redo日志,在mysql中默认以ib_logfile0,ib_logfile1名称存在,可以手工修改参数,调节开 ...

  3. mysql常见死锁_MySQL死锁系列-常见加锁场景分析

    如下图所示,数据库的隔离等级,SQL 语句和当前数据库数据会共同影响该条 SQL 执行时数据库生成的锁模式,锁类型和锁数量. 下面,我们会首先讲解一下隔离等级.不同 SQL 语句 和 当前数据库数据对 ...

  4. mysql数据库安全审计_MySQL数据库安全日志审计工具

    说明 由于MySQL社区版没有自带的审计功能或插件,对于等级保护当中对数据库管理的要求的就存在一定的不满足情况的,抛开条条框框不说数据库的日志是值得研究的,通过收集数据库的日志到企业SOC平台便于安全 ...

  5. mysql heartbeat 慢_Mysql 慢日志优化分析方法

    mysql有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的,为了开启这个功能,要修改my.cnf或者在mysql启动的时候加入一些参数. 如果在my.cnf里面修改,需增加 ...

  6. mysql binlog 记录_MYSQL binlog 日志内容查看

    记录mysql数据库真正执行更改的所有操作(DML语句),不包含那些没有修改任何数据的语句,不会记录select和show这样的语句. 二进制日志的作用: 1. 可以完成主从复制的功能 2. 进行恢复 ...

  7. mysql 常见错误_mysql常见错误大全

    在网上找了好多关于mysql的错误信息详细说明的代码,无奈,或者是所述不全,或者是所述不详.最后,无意中查看了一下mysql的官方手册,才发现原来它一直就在身边. 如手册所述,mysql的错误消息可以 ...

  8. mysql常见字符集_MySQL字符集

    一.字符集介绍 什么是字符集(Charset) 字符集:是一个系统支持的所有抽象字符的集合.字符是各种文字和符号的总称,包括各国家文字.标点符号.图形符号.数字等. 1.gbk/gb2312 gbk/ ...

  9. mysql 常见错误_mysql常见的错误提示问题处理小结

    1.mysql服务无法启动,报1067错误 解决方案: 1).把mysql服务端解压目录新加一个my.ini文件,内容如下 [mysqld] # set basedir to installation ...

最新文章

  1. 3年前的一个小项目经验,分享给菜鸟兄弟们(公文收发小软件:小技能 DeleteMark)...
  2. Android中解决debug.keystore到期的问题
  3. [leetcode]Trapping Rain Water @ Python
  4. 《统计学》学习笔记之导论
  5. How ASP.NET MVC Works?
  6. PDU (Protocol Data Unit) - 协议数据单元
  7. 【渝粤题库】陕西师范大学201381 国际经济法作业
  8. Juery On事件的 事件触发流程
  9. CCS 软件仿真 支持6678
  10. 今天教大家怎么用Unity制作简单的AR
  11. 遥感或DEM像素深度如何降为8bit
  12. PE启动如何解除BitLocker硬盘锁
  13. 英文单词cipher 和password的区别,用法有什么不同,
  14. Altium designer 10安装破解以及出现缺少mfc71.dll文件的情况处理
  15. 判断大学生体侧项目中立定跳远成绩的等级
  16. AndroidStudio启动app时闪退问题解决过程
  17. 推荐:5款可以教你编程的游戏
  18. 解决win10电脑无法卸载matlab7.1的问题
  19. python 爬取西刺ip代理池
  20. 如何提高自己和员工的工作积极性

热门文章

  1. vmware 12.5.3 linux,vmware12如何安装linux|opensuse42.3系统安装教程
  2. 转载别人的转载 Android Studio实用插件集合
  3. Kotlin学习 PART 1:kotlin定义和目的
  4. [转]Python测试框架对比----unittest, pytest, nose, robot framework对比
  5. python compileall 打包发布
  6. 每秒100W请求,12306秒杀业务,架构如何优化?
  7. Rabbitmq 极简实现
  8. iPhone XS MAX全球首碎!一看官方维修价 网友:修不起!
  9. JavaScrip(一)JavaScrip的写法
  10. thinkphp 模型的创建