最近项目上遇到点问题,服务器出现连接超时。上次也是超时,问题定位到mongodb上,那次我修改好了,这次发现应该不是这个的问题了。 初步怀疑是mysql这边出问题了,写的sql没经过压力测试,导致用户量多的时候,出现拥堵。 好,那就来看看mysql方便的慢查询吧,来看看具体的哪些sql ...
现在的CMS系统 博客系统 BBS等都喜欢使用标签tag作交叉链接,因此我也尝鲜用了下。但用了后发现我想查询某个tag的文章列表时速度很慢,达到 秒之久 百思不解 后来终于解决 ,我的表结构是下面这样的,文章只有 篇。 文章表article id,title,content 标签表tag tid,tag name 标签文章中间表article tag id,tag id,article id 其 ...
2012-05-09 10:09 3 114359 推荐指数:
最近项目上遇到点问题,服务器出现连接超时。上次也是超时,问题定位到mongodb上,那次我修改好了,这次发现应该不是这个的问题了。 初步怀疑是mysql这边出问题了,写的sql没经过压力测试,导致用户量多的时候,出现拥堵。 好,那就来看看mysql方便的慢查询吧,来看看具体的哪些sql ...
一、 优化概述 MySQL数据库是常见的两个瓶颈是CPU和I/O的瓶颈,CPU在饱和的时候一般发生在数据装入内存或从磁盘上读取数据时候。磁盘I/O瓶颈发生在装入数据远大于内存容量的时候,如果应用分布在网络上,那么查询量相当大的时候那么平瓶颈就会出现在网络上,我们可以用mpstat ...
MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更 好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道 一般 ...
一个sql语句中如果有子查询,会较大的影响查询效率。 在子查询的表跟父查询的表有关系的情况,可以通过表关联的方式优化效率。 例如: select a.id, a.name, (select b.name from table2 b where b.code = a.id ...
思路: 1、服务器硬件优化,比如机械硬盘换成固态硬盘,更换CPU,增加运行内存2、mysql服务器优化,window服务器换成linux服务器,不过一般企业级标配都是linux3、sql本身优化,利用关联查询,连接等,避免子查询嵌套4、反范式设计优化5、索引优化 其中4、反范式设计优化 ...
转自:美团点评技术团队http://tech.meituan.com/mysql-index.html MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课 ...
一、慢查询日志概念 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10S以上的语句。默认情况下 ...
为什么查询速度会慢 1.慢是指一个查询的响应时间长。一个查询的过程: 客户端发送一条查询给服务器 服务器端先检查查询缓存,如果命中了缓存,则立可返回存储在缓存中的结果。否则进入下一个阶段 服务器端进行SQL解析、预处理,再由优化器生成对应的执行计划。 MySQL根据优化器 ...