本文整理了一些MySQL的通用优化方法,做个简单的总结分享,旨在帮助那些没有专职MySQL DBA的企业做好基本的优化工作,至于具体的SQL优化,大部分通过加适当的索引即可达到效果,更复杂的就需要具体分析了。
1、硬件层相关优化
1.1、CPU相关
在服务器的BIOS设置中,可调整下面的几个配置,目的是发挥CPU最大性能,或者避免经典的NUMA问题:...
分类:
数据库 时间:
2015-06-01 09:40:59
阅读次数:
145
概述该篇主要介绍一些常用的sql优化技巧sql优化1.select * from table_name where;建议将*改为需要的列。这对速度不会有明显的影响,主要考虑节省内存。2.like语句一般情况下不鼓励使用like操作,如果非使用不可,如何使用也是一个问题。like “%aaa%” 不会使用索引而like “aaa%”可以使用索引。3.不要在列上进行运算,无法运用索引select * f...
分类:
数据库 时间:
2015-05-31 18:33:03
阅读次数:
212
概述??索引是数据库优化中最常用的也是最重要的手段之一。该篇看看索引的分类,使用场景,不能使用的场景等。索引分类??索引是在mysql存储引擎中实现的,而不是在服务器层实现的。索引每种存储引擎的索引不一定相同。mysql支持4种索引:
B-tree索引:最常见索引,大部分引擎都支持B树索引。
full-text索引:全文索引。
hash索引:只有memory引擎支持。
R-Tree索引:空间索引是m...
分类:
数据库 时间:
2015-05-31 09:22:17
阅读次数:
170
mysql优化:修改mysql的root账号的密码:先停止mysql服务:servicemysqldstop使用--skip-grant-tables忽略密码启动:mysqld_safe--skip-grant-tables&进入mysql修改密码:usemysqlupdateusersetpassword=password(‘mysql‘)whereuser=‘root‘;flushprivileges;查看表占用空间..
分类:
数据库 时间:
2015-05-29 18:28:42
阅读次数:
314
概述我们面对一个问题的时候,首先是发现问题,然后才是解决问题。在这篇文章中,主要解决如何定位问题。解决方法1.通过show status了解各种sql执行频率show status [like 'com_%'];Com_xxx表示每个xxx语句执行的次数。
具体参数,参见:
http://lxneng.iteye.com/blog/451985
http://www.sandzhang.com...
分类:
数据库 时间:
2015-05-29 14:05:22
阅读次数:
177
摘要:第一部分:基础知识第二部分:MYISAM和INNODB索引结构1、简单介绍B-tree B+ tree树2、MyisAM索引结构3、Annode索引结构4、MyisAM索引与InnoDB索引相比较第三部分:MYSQL优化1、表数据类型选择2、sql语句优化(1) 最左前缀原则(1.1) 能.....
分类:
数据库 时间:
2015-05-28 13:50:10
阅读次数:
213
数据库设计原则标准化和规范化 数据库设计范式(3NF)第一范式数据属性唯一标示在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属...
分类:
数据库 时间:
2015-05-25 12:47:57
阅读次数:
142
普通MySQL运行,数据量和访问量不大的话,是足够快的,但是当数据量和访问量剧增的时候,那么就会明显发现MySQL很慢,甚至down掉,那么就要考虑优化我们的MySQL了。优化无非是从三个角度入手:第一个是从硬件,增加硬件,增加服务器第二个就是对我们的MySQL服务器进行优化,增加缓存大小,开多端口...
分类:
数据库 时间:
2015-05-22 20:54:32
阅读次数:
148
1,当只要一行数据时使用 LIMIT 1如果明确只取一条数据,要加上limit 1;2,避免 SELECT *,根据需要获取字段应该养成一个需要什么就取什么的好的习惯。3,使用 ENUM 而不是 VARCHARENUM 类型是非常快和紧凑的。在实际上,其保存的是 TINYINT,但其外表上显示为字符...
分类:
数据库 时间:
2015-05-22 14:49:14
阅读次数:
134