一 简介:之前遇到一个tmp分区暴涨的问题,后来经过大神的指点,遂分析写下

二 分类:

1  select语句出现 using temporay

tmp 下出现 #sql_631a_1.MYD #sql_631a_1.MYI

解决办法:kill掉慢查询,临时文件被删除

2  online_ddl copy 方式

/data/dbname/ 下出现

#sql-6bd4_c.ibd  #sql-6bd4_c.frm 文件 这是在copying-to-tmp

以上情况 5.6和5.7独立临时表空间compressed的情况下均会出现

三 总结:

1 升级你的mysql版本 5.7使用独立临时表空间 不要设置为压缩方式,可以很大程度避免问题

2 tmp_table_size 设置一个合适的值,尽量避免应用磁盘的临时表文件

3 对于ddl-copy方式 尽量采用pt-osc方式,能不走临时表就不要走

4 优化你的慢语句,尽量减少use temporay

四 补充 临时表说明

1 临时表为每个session独自占有,其他session不可见,show tables同样不可见

2 临时表可以与普通表重名,重名情况下临时表的优先级高于普通表

3 临时表重命名不能用rename,但是可以用alter

4 临时表在session断开后会自动回收消除

5 在binlog=row格式下,临时表的操作并不会记录到binlog中

mysql 案例 ~查询导致的tmp临时文件问题的更多相关文章

  1. 《MySQL》一次MySQL慢查询导致的故障

    本文转载自 http://www.jb51.net/article/70955.htm 我们知道分析MySQL语句查询性能的方法除了使用EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指 ...

  2. mysql慢查询导致故障

    原因: 网站访问很慢,报警php进程数过大 排查及处理:1.首先查看服务器监控和mysql监控,分析服务器是否负载过大,受到攻击,以及mysql性能方面是否正常2.发现只读数据库服务器cpu利用率10 ...

  3. MySQL Online DDL导致全局锁表案例分析

    MySQL Online DDL导致全局锁表案例分析 我这边遇到了什么问题? 线上给某个表执行新增索引SQL, 然后整个数据CPU打到100%, 连接数暴增到极限, 最后导致所有访问数据库的应用都奔溃 ...

  4. MySQL编码不一致导致查询结果为空

    升级数据库后(5.1到8.0),发现一个奇怪的问题,某些页面在升级前可以正常查询,但升级后什么也查不出来了,有时候还会查出错误的结果.经过一整天的排查,终于发现由两个原因导致,现记录如下. 第一是数据 ...

  5. 如何查找MySQL中查询慢的SQL语句

    如何查找MySQL中查询慢的SQL语句 更多 如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow ...

  6. 如何查找MySQL中查询慢的SQL语句(转载)

    转载自https://www.cnblogs.com/qmfsun/p/4844472.html 如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那 ...

  7. mysql 案例~select引起的性能问题

    案例1 背景:测试环境下发现大量select查询,而且负载飙升到90+ 排查思路: 1 老规则,按照排错脚本走一圈,规划出几个元素(1 针对库访问的统计 2针对具体语句类型的统计),发现有大量的sel ...

  8. MySql学习—— 查询性能优化 深入理解MySql如何执行查询

    本篇深入了解查询优化和服务器的内部机制,了解MySql如何执行特定查询,从中也可以知道如何更改查询执行计划,当我们深入理解MySql如何真正地执行查询,明白高效和低效的真正含义,在实际应用中就能扬长避 ...

  9. 从项目上一个子查询扩展学习开来:mysql的查询、子查询及连接查询

    上面这样的数据,想要的结果是:如果matchResult为2的话,代表是黑名单.同一个softId,version,pcInfoId的代表是同一个软件,需要去重:同时,如果相同软件里面只要有一个mat ...

随机推荐

  1. Hibernate 查询技术

    转载: http://blog.csdn.net/u014078192/article/details/24986475 一.Hibernate的三种查询方式(掌握) Hibernate中提供了三种查 ...

  2. Problem B. Harvest of Apples HDU - 6333(莫队)

    Problem Description There are n apples on a tree, numbered from 1 to n.Count the number of ways to p ...

  3. Sabotage UVA - 10480 (输出割边)

    题意:....emm...就是一个最小割最大流,.,...用dinic跑一遍.. 然后让你输出割边,就是 u为能从起点到达的点,  v为不能从起点到达的点 最后在残余路径中用dfs跑一遍  能到达的路 ...

  4. 向git添加和提交文件

    状态 git status 可以知道有哪些文件被修改,哪些文件待提交 当前无待提交文件 分区 三个分区:工作区,缓存区,版本库 三个分区之间的联系: 工作区 >> git add > ...

  5. 自学Linux Shell3.1-帮助命令man

    点击返回 自学Linux命令行与Shell脚本之路 3.1-帮助命令man 1.man命令概述 默认bash shell提示符是美元符号($),这个符号表明shell在等待用户输入. Linux ma ...

  6. 自学Python5.1-面向对象与面向过程

    自学Python之路 自学Python5.1-面向对象与面向过程 面向过程:根据业务逻辑从上到下写代码. 优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机.嵌入式开 ...

  7. 对 static const char* const str[] = {“string”} 的理解

    static const char* const str[] = {“string”} 静态常量型指针变量 static const char* 常量型变量 const str[] 这样修饰的作用为 ...

  8. vi怎么查找关键字

    进入vi的命令模式,具体操作:编辑模式下键入“:”,此时进入命令模式 在命令模式下键入“/”.

  9. 使用博客系统发生_STORAGE_WRITE_ERROR_错误

    因为本人有自己的vps正好又最近学习了网络的搭建,但是呢不是一番风顺的在假设好PHP.http和MySQL后吧一个博客系统放进去后出现了以下问题 好吧== 出来了这个问题到是让我看了半天,然后查了查说 ...

  10. CPU密集型和I/O密集型区别

    CPU密集型 一些进程绝大多数时间在计算上,称为计算密集型(CPU密集型)computer-bound.一些大量循环的代码(例如:图片处理.视频编码.人工智能等)就是CPU密集型. I/O密集型 有一 ...