- 浏览: 950450 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (189)
- 方案流程图及架构 (5)
- j2ee (5)
- ajax (2)
- oracle (1)
- pl/sql (0)
- designpattern (0)
- searchengine (2)
- mysql (28)
- sso (3)
- jvm (3)
- uml (0)
- oo (1)
- dboptimize (3)
- web2.0 (2)
- unix/linux (1)
- hadoop (4)
- mahout (0)
- android (2)
- html5 (0)
- solr (0)
- 分词 (0)
- 机器学习 (0)
- 育儿 (2)
- linux (5)
- im (1)
- hive (1)
- nginx (1)
- mysql复合索引的使用场景 (0)
- hadoop搭建报错 (1)
- qps (1)
- 架构 (1)
- nosql (1)
- 推荐引擎 (5)
- 云存储 (1)
- 职业生涯 (1)
- 破解 instsall4j (1)
- 数字教育 微课程 (1)
- khan 可汗学院 (1)
- socket (2)
- 消息队列 (0)
- java (0)
- 视频流媒体 (1)
- memcache (1)
- 开源 (1)
- reactor (1)
- spi (1)
- 持续构建 ci (1)
- zookeeper (3)
- tomcat (1)
- mycat (1)
- mysql mycat sysbench (1)
- mycat mysql (1)
- svn (1)
- id发号器 (1)
- 多机房 (2)
- 分布式事务 (3)
- 电商 (1)
- 库存 (1)
最新评论
-
baichoufei90:
hadoop权威指南说ZK的zab协议不是用的paxos算法。 ...
zookeeper原理(转) -
shin1355:
看了一小部分,看不下去了,
zookeeper原理(转) -
b_l_east:
表示没看懂楼主关于选举算法的描述,顿时没了读下去的兴致
zookeeper原理(转) -
prince4426:
好前沿的技术呀
hive选型讨论 -
zk519720303:
zookeeper原理(转)
一、 MySQL: 索引以B树格式保存
Memory存储引擎可以选择Hash或BTree索引,Hash索引只能用于=或<=>的等式比较。
1、普通索引:create index on Tablename(列的列表)
alter table TableName add index (列的列表)
create table TableName([...], index [IndexName] (列的列表)
2、唯一性索引:create unique index
alter ... add unique
主键:一种唯一性索引,必须指定为primary key
3、全文索引:从3.23.23版开始支持全文索引和全文检索,FULLTEXT,
可以在char、varchar或text类型的列上创建。
4、单列索引、多列索引:
多个单列索引与单个多列索引的查询效果不同,因为:
执行查询时,MySQL只能使用一个索引,会从多个索引中选择一个限制最为严格的索引。
5、最左前缀(Leftmost Prefixing):多列索引,例如:fname_lname_age索引,以下的搜索条件MySQL都将使用
fname_lname_age索引:firstname,lastname,age;firstname,lastname;firstname,其他情况将不使用。
二、根据sql查询语句确定创建哪种类型的索引,如何优化查询
选择索引列:
a.性能优化过程中,选择在哪个列上创建索引是最重要的步骤之一。可以考虑使用索引的主要有
两种类型的列:在where子句中出现的列,在join子句中出现的列。
b.考虑列中值的分布,索引的列的基数越大,索引的效果越好。
c.使用短索引,如果对字符串列进行索引,应该指定一个前缀长度,可节省大量索引空间,提升查询速度。
d.利用最左前缀
e.不要过度索引,只保持所需的索引。每个额外的索引都要占用额外的磁盘空间,并降低写操作的性能。
在修改表的内容时,索引必须进行更新,有时可能需要重构,因此,索引越多,所花的时间越长。
MySQL只对一下操作符才使用索引:<,<=,=,>,>=,between,in,
以及某些时候的like(不以通配符%或_开头的情形)。
发表评论
-
MySQL索引背后的数据结构及算法原理
2016-10-24 19:12 1245摘自http://blog.codinglabs.org/a ... -
MySQL的InnoDB索引原理详解
2016-03-29 11:18 659原文链接 http://www.codeceo.com/a ... -
sysbench压力测试
2015-10-20 10:58 27471.下载sysbench并安装 wget https:// ... -
mysql本地可以登录远程无法登录
2014-05-13 12:34 655mysql创建的用户本地可以登录,但是远程无法登录 原来是 ... -
mysql创建的用户本地无法登录
2014-05-13 12:33 527今天遇到一个诡异的问题,mysql创建的用户在本地无法登录, ... -
mysql的为什么?
2013-12-04 17:01 0什么是锁? 锁是怎么实现的? 高并发情况下锁对性能的影 ... -
mysqldump: Got error: 1449: The user specified as a definer
2013-03-07 15:20 1583备份数据库遇到如下的错误,我遇到了很多次,但是每次都忘记是怎么 ... -
mysql 5.1.34 主从复制部署手册
2013-01-28 09:21 1439******************************* ... -
mysql tps qps
2012-11-12 11:49 1245TPS - Transactions Per Second(每 ... -
mysql复合索引的使用场景
2011-11-22 15:54 23051、复合索引使用的目的是什么? :能形成索引覆盖,提高whe ... -
mysql 动态迁移架构(转)
2011-05-23 14:43 1556mysql 的架构已经讨论 ... -
mysql主从数据不一致的解决方法
2011-05-12 17:45 4355转载自 http://hi.baidu.com/thinkin ... -
mysql 分区功能介绍及实例
2011-04-01 18:54 1479一,什么是数据库分区 ... -
mysql 分表的三个方法
2011-04-01 18:51 1366一,先说一下为什么要 ... -
mysql 分区、分表的区别
2011-04-01 18:47 1838一,什么是mysql分表,分区 什么是分表,从表面意思上看呢 ... -
mysql临时表技巧
2011-01-25 11:23 908给定一个user表,包含id和uid两列,其中uid列可能有重 ... -
mysql查看数据库中表的大小、索引大小
2011-01-20 12:44 2493SELECT concat(round(table_ro ... -
mysql 存储过程
2010-12-13 14:09 1239最近在看运营系统的源码,里面用了很多存储过程来生成报表,mys ... -
mysql 从数据库slave 状态为no的解决方法
2010-12-07 10:27 1268从数据库的状态显示为如下 Slave_IO_Ru ... -
mysql数据导出到文件
2010-12-03 16:03 1278数据导出到文件,网上很多帖子都是乱写,郁闷一下,这么简单的东西 ...
相关推荐
由浅入深探究mysql索引结构原理、性能分析与优化
MySQl索引优化课件,详细得介绍了MySQl索引优化数据库
MySQL 索引最佳实践很不错,虽然是英文版
05-VIP-Mysql索引优化实战二.pdf
MySQL索引类型大汇总 mysql里需要用到了
04-VIP-Mysql索引优化实战一.pdf
mysql索引的设计和使用
本资源详细解释了MySQL索引的出现原因以及一些常见的面试问题
《MySQL索引原理及如何建立高效索引.pptx》主要讲述mysql数据库索引底层原理、作用、 索引使用、索引失效等核心技术点。非常实用!!!
mysql索引和锁机制,简单介绍的ppt,很详细的内容
Mysql索引数据结构.pptx
7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7月6日 MySQL索引篇7...
MySQL索引分析和优化.pdf 记录自己在学习过程中看过的书欢迎下载
关于mysql索引一些优化介绍与创建原则,还有对order by排序的算法的介绍等等
MySQL索引背后的数据结构及算法原理,技术面试重要内容呀
1. 索引与执行计划 1 1.1. 索引入门 1 1.1.1. 索引是什么 1 1.1.2. 索引得分类 3 1.1.3. 基础语法 3 1.2. 执行计划 3 1.2.1. 什么是执行计划 3 1.2.2. 执行计划的作用 3 1.2.3. 执行计划的语法 4 1.2.4. 执行计划...
MySQL索引 聚集索引 如果你想了解MySQL索引查询优化,你首先应该对MySQL数据组织结构、B-Tree索引、聚集索引,次要索引有一定的了解,才能够更好地理解MySQL查询优化行为。这里主要探讨MySQL InnoDB的聚集索引。
mysql索引、触发器、事务、存储过程说明