mysql数据库优化
来源:互联网 发布:java 线程池原理 编辑:程序博客网 时间:2024/06/05 07:15
1.创建索引,对于查询占主要的应用来说,要添加索引。
2.复合索引:在创建复合索引时应该将最常用作限制条件的列放在最左边,
3.复合索引:添加索引的列不能含有NULL值;
4.使用短索引:对串列进行索引,如果可能应该指定一个前缀长度。例如,如果有一个CHAR(255)的 列,如果在前10 个或20 个字符内,多数值是惟一的,那么就不要对整个列进行索引。短索引不仅可以提高查询速度而且可以节省磁盘空间和I/O操作。
5.排序的索引问题:mysql查询只使用一个索引,因此如果where子句中已经使用了索引的话,那么order by中的列是不会使用索引的。因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引。
6.like语句操作:一般情况下不鼓励使用like操作,如果非使用不可,如何使用也是一个问题。like “%aaa%” 不会使用索引而like “aaa%”可以使用索引。
7、不要在列上进行运算
select * from users where YEAR(adddate)<2007;
将在每个行上进行运算,这将导致索引失效而进行全表扫描,因此我们可以改成
select * from users where adddate<‘2007-01-01';
8、不使用NOT IN和<>操作
NOT IN和<>操作都不会使用索引将进行全表扫描。NOT IN可以NOT EXISTS代替,id<>3则可使用id>3 or id<3来代替。
0 0
- MYSQL数据库查询优化
- mysql数据库优化
- MySQL数据库优化
- mysql数据库优化(转)
- 优化 MySQL 数据库
- 优化MySQL数据库查询
- MySQL数据库优化五步走
- 优化MySQL数据库查询
- 优化MySQL数据库查询
- 优化MySQL数据库查询
- Mysql数据库优化配置
- MySQL数据库优化--SQL
- 优化mysql数据库方法
- 数据库优化之MySQL
- MYSQL数据库的优化
- mysql数据库优化五步走
- MySQL 数据库性能优化
- mysql数据库优化五步走
- android string.xml中添加特殊字符
- Leetcode 210. Course Schedule II
- Android bluetooth设备状态监听
- sqlserver varbinary to base64
- IcoMoon图标字体
- mysql数据库优化
- System.nanoTime()和System.currentTimeMillis()区别 (还是直接看API比较清晰)
- Android Studio或Eclipse找不到逍遥安卓模拟器解决办法
- 音乐| 冥想音乐推荐
- 非空判定工具类
- 2016届360公司PHP服务端开发笔试和面试之所得所感
- android mount --bind 挂载目录
- Hibernate 注解
- javax.net.ssl.SSLHandshakeException(Cas导入证书)