04 2014 档案
摘要:最近同事遇到一个问题,使用python开发的工具在执行的时候无法和MySQL建立连接,其最直接的现象就是满篇的TIME_WAIT,最后通过调整tcp_timestamps参数问题得以解决,再次记录一下这次解决的经验总结。ps:不过先汗颜一个,对基础的tcp知识太不敏感了,需要回炉重新学习啊。一、看下...
阅读全文
摘要:最近遇到一个故障和磁盘满有关系,并且同事也发现经常有磁盘满导致操作hang住无响应的情况,于是抽时间研究了一下这2种情况。一、磁盘满了之后MySQL会做什么?我们看下官方的说法When a disk-full condition occurs, MySQL does the following: ...
阅读全文
摘要:最近遇到业务的一个类似文件系统的存储需求,对于如何在mysql中存储一颗树进行了一些讨论,分享一下,看看有没有更优的解决方案。一、现有情况首先,先假设有这么一颗树,一共9个节点,1是root节点,一共深3层。(当然实际业务不会这么简单)原有的表结构如下:idparents_idnamefull_pa...
阅读全文
摘要:众所周知drop table会严重的消耗服务器IO性能,如果被drop的table容量较大,甚至会影响到线上的正常。首先,我们看一下为什么drop容量大的table会影响线上服务 直接执行drop table,mysql会将表定义和表数据全都删除,包括磁盘上的物理文件,也包括buffer po...
阅读全文
摘要:之前遇到开发询问“mysql server has gone away”的问题,想当然的就认为是由于太长时间没有操作,导致超过MySQL服务端上的wait_timeout的设置,最终连接被MySQL服务端回收了。最近一次突然自己同事写的脚本在运行过程中被中断了,查看报错信息依然是“mysql server has gone away”,同事的脚本在多个MySQL实例上根据时间范围取值,虽然执行时间长了点,但是绝对不会有超过wati_timeout的空闲等待时间,于是去学习了一下到底有哪几种情况会出现这个报错。情况1就是最常见的,一个链接超过wait_timeout的设置时间没有做任何事情,被M
阅读全文

浙公网安备 33010602011771号