mysql优化
一、优化事项
1. 数据库(表)设计合理 (不合理设计导致内伤)
我们的表设计要符合3NF 3范式(规范的模式) , 有时我们需要适当的逆范式。
2. sql语句的优化(索引,常用小技巧)
3. 数据的配置(缓存设大,调整Mysql缓存) 用空间换时间
4. 适当硬件配置和操作系统 (读写分离.) 内存250M 1个CPU怎么优化都不行
二、使用索引的注意事项
查询要使用索引最重要的条件是查询条件中需要使用索引。
下列几种情况下有可能使用到索引:
1. 对于创建的多列索引,只要查询条件使用了最左边的列,索引一般就会被使用
2. 对于使用like的查询,查询如果是 ‘%aaa’ 不会使用到索引‘aaa%’ 会使用到索引
下列的表将不使用索引:
1. 如果条件中有or,即使其中有条件带索引也不会使用
2. 对于多列索引,不是使用的第一部分,则不会使用索引
3. like查询是以%开头
4. 如果列类型是字符串,那一定要在条件中将数据使用引号引用起来。否则不使用索引
5. 如果mysql估计使用全表扫描要比使用索引快,则不使用索引。
mysql优化的更多相关文章
- MySQL优化聊两句
原文地址:http://www.cnblogs.com/verrion/p/mysql_optimised.html MySQL优化聊两句 MySQL不多介绍,今天聊两句该如何优化以及从哪些方面入手, ...
- 0104探究MySQL优化器对索引和JOIN顺序的选择
转自http://www.jb51.net/article/67007.htm,感谢博主 本文通过一个案例来看看MySQL优化器如何选择索引和JOIN顺序.表结构和数据准备参考本文最后部分" ...
- mysql 优化
1.存储过程造数据 CREATE DEFINER=`root`@`localhost` PROCEDURE `generate_test_data`(`n` int) begin declare i ...
- mysql优化笔记之分页
过年闲得蛋疼,于是看看mysql优化,看了网上好多关于分页的优化方法,但是呢,我亲自试上一把的时候,没有出现他们说的现象...难道是我的机器问题么? 下面看看我的实践记录,希望看到的加入进来交流一下O ...
- MySQL优化概述
一. MySQL优化要点 MySQL优化是一门复杂的综合性技术,主要包括: 1 表的设计合理化(符合 3NF,必要时允许数据冗余) 2.1 SQL语句优化(以查询为主) 2.2 适当添加索引(主键索引 ...
- MySQL优化实例
这周就要从泰笛离职了,在公司内部的wiki上,根据公司实际的项目,写了一些mysql的优化方法,供小组里的小伙伴参考下,没想到大家的热情很高,还专门搞了个ppt讲解了一下. 举了三个大家很容易犯错的地 ...
- Mysql优化系列(2)--通用化操作梳理
前面有两篇文章详细介绍了mysql优化举措:Mysql优化系列(0)--总结性梳理Mysql优化系列(1)--Innodb引擎下mysql自身配置优化 下面分类罗列下Mysql性能优化的一些技巧,熟练 ...
- mysql优化记录
老板反应项目的反应越来越慢,叫优化一下,顺便学习总结一下mysql优化. 不同引擎的优化,myisam读的效果好,写的效率差,使用场景 非事务型应用只读类应用空间类应用 Innodb的特性,innod ...
- mysql 优化实例之索引创建
mysql 优化实例之索引创建 优化前: pt-query-degist分析结果: # Query 23: 0.00 QPS, 0.00x concurrency, ID 0x78761E301CC7 ...
- MySQL优化的奇技淫巧之STRAIGHT_JOIN
原文地址:http://huoding.com/2013/06/04/261 问题 通过「SHOW FULL PROCESSLIST」语句很容易就能查到问题SQL,如下: SELECT post.* ...
随机推荐
- tyvj1468 清理垃圾
背景 聚会结束,留下许多垃圾.Candy:"好多垃圾啊,飘飘乎居士,我们一起处理垃圾吧!" 描述 Candy家里总共有n个垃圾等待处理,每个垃圾对于Candy和飘飘乎居士处 ...
- Java Web ——http协议请求报文
package com.demo.util; import java.io.IOException; import java.io.InputStream; import java.net.*; /* ...
- 07-本地 YUM 源制作
1.YUM相关概念 1.1.什么是YUM YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基 ...
- java开发人员,最应该学习和熟练使用的工具类。google guava.(谷歌 瓜娃)
学习参考文章: http://blog.csdn.net/wisgood/article/details/13297535 http://ifeve.com/google-guava/ http:// ...
- pycharm 2016.3 注册码
Choose Active Code 43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QTczWVlKIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYX ...
- Nagios安装
在做安装之前确认要对该机器拥有root权限. 确认你安装好的Fedora系统上已经安装如下软件包再继续: Apache GCC编译器 GD库与开发库 可以用yum命令来安装这些软件包: yum ins ...
- tengine/nginx-tomcat动静分离遇到的问题
小站安装好tengine后,接下来的工作就是要配置好tengine让其和后端的tomcat正常的连接工作起来,tengine的配置文件本身比较简单,网上有大量的相关介绍说明文档,我这里只是摘出我配置过 ...
- Ajax加载菊花loding效果
Ajax 异步请求的时候,一般都会利用一个动态的 gif小图片来制作一个Ajax Loading ,以便增加用户体验. 这里我们使用Spin.js ,该 js 脚本压缩后5k,可以不用任何图片,任何外 ...
- MyBatis:统计数量
dao: /** * 统计商家的案例数量 * * @param shopId * @return */ long countByShopId(Long shopId); @Override publi ...
- 得静下心来看python了。
陆陆续续看了些python爬虫的相关知识.今天找到了这篇博客不错就看这个,明天看到那个又很好又跑去看那个. 来来回回耽误不少时间.接下来不能再这样了,老老实实就看xlzd.me博客和Python实战: ...