`

mySQL中索引index详解

 
阅读更多

索引
mysql <wbr>索引(index)


 

注意:
1、不要过度索引
2、索引条件列(where后面最频繁的条件列)
3、尽量索引散列值,过于集中的值不要索引。
索引类型
1、普通索引(index):仅仅是加快查询速度
2、唯一索引(unique index):行上的值不能重复
3、主键索引(primary key):主键不能索引
主键索引必定是唯一的,唯一索引不一定是主键,
一张表上只能一个主键,可以有一个或者多个唯一索引。
4、全文索引(fulltext index):在mysql 默认情况下对于中文作用不大。
查看 一张表上的索引
show index from 表名(/G可以横着显示)



 

 
索引不知道名称默认以索引的列名作索引
建立索引

alter table 表名add index/unique/fulltext [索引名](列名)
[索引名]可以不写 ,不写默认与列名相同。
alter table 表名add primary key (列名)
创建索引示例:



 
为 tel列 创建普通索引
 

 

 
为email列 添加唯一索引
 

 
为intro列添加全文索引

 


 


为id列添加主键

  
删除索引
alter  table drop index 索引名
 
示例:
删除email(唯一)索引


 

 

删除主键索引 
全文索引使用



 

 

查看匹配度
select 列名, match (索引) against (‘ 索引词’) from表名;

 

新发现 as  支持 汉字

 

全文停止字:
全文索引,不针对非常频繁的词,做索引。
针对汉语意义不大,因为因为英文单词可以依赖空格等标点来判断单词界限,进而对单词进行索引,而中文mysql无法识别单词界限。
以下表列出了默认的全文停止字 :
a's
able
about
above
according
accordingly
across
actually ...
 
注意!!换服务器导入数据:
大数据量时,先把索引去掉,导入后,统一加上索引。
索引加快查询速度,降低增删改的速度。
额外:
show create table  表名
 可以查看  创建表的语句

发现问题
使用全文索引时加上引擎 ,默认 InnoDB引擎,不支持,会报错


 

详细:

http://blog.sina.com.cn/s/blog_9707fac301016xmp.html

  • 大小: 65.5 KB
  • 大小: 71.2 KB
  • 大小: 60.2 KB
  • 大小: 2.3 KB
  • 大小: 3.2 KB
  • 大小: 78.7 KB
  • 大小: 7.7 KB
  • 大小: 2.3 KB
  • 大小: 56.3 KB
  • 大小: 95.9 KB
  • 大小: 163.6 KB
  • 大小: 5.5 KB
  • 大小: 58.5 KB
  • 大小: 13.1 KB
  • 大小: 5.3 KB
  • 大小: 4 KB
  • 大小: 4.3 KB
  • 大小: 7 KB
  • 大小: 8.5 KB
分享到:
评论

相关推荐

    MySQL-数据库-索引详解

    MySQL 数据库索引详解 MySQL 数据库索引是一种特殊的数据库结构,可以快速查询数据库表中特定记录。索引是提高数据库性能的重要方式。 索引的概念 ---------------- 索引是表中数据的目录。如果使用索引,则扫描...

    mysql 索引失效详解

    MySQL 索引失效详解 MySQL 索引是一种加快数据检索速度的数据库对象。索引可以大幅度提高查询效率,但是如果不正确使用索引,可能会导致索引失效。索引失效是指MySQL 不能使用索引来加速查询,导致查询效率下降。 ...

    Mysql数据库索引创建、索引删除、索引失效场景详解

    在MySQL中,可以使用`DROP INDEX`语句来删除索引。但是,需要注意的是,如果索引与主键关联,必须先删除主键,再删除主键索引。 索引的失效场景包括:更新或删除索引列,使用不带索引的全表扫描操作,使用`SELECT *...

    Mysql的索引详解学习笔记.zip

    总结,理解和熟练运用MySQL索引是数据库管理的关键技能。通过了解索引原理,选择合适的索引类型,优化索引使用,可以显著提高数据库的查询效率,从而提升整个系统的性能。不断实践和学习,你将成为MySQL索引的专家。

    mysql 索引与执行计划

    索引(Index)在MySQL中是一种帮助数据库高效获取数据的数据结构。它类似于现实生活中书籍的目录,能够显著提高数据检索的速度。通过索引,数据库可以更快地定位到所需的数据记录,从而减少查询时间。 例如,在查找...

    Mysql覆盖索引详解

    覆盖索引在`EXPLAIN`查询计划的`EXTRA`列中会显示为`USING INDEX`。 要判断一个索引是否是覆盖索引,可以通过分析查询语句并检查索引是否包含查询中所需的所有列。例如,如果一个查询只需要从索引中获取数据,而...

    mysql索引与树结构(索引简介、索引用法详解、B-Tree索引结构、索引导致的问题).docx

    - **修改索引**: MySQL不直接支持修改索引,需先删除再重建。 - **查询索引** - **基础命令**: `EXPLAIN SELECT * FROM table_name WHERE condition;` - **参数解释**: - **id**: 指示查询的执行顺序。 - **...

    MySQL索引与Index Condition Pushdown

    ### MySQL索引与Index Condition Pushdown详解 #### 一、MySQL索引概述 索引是数据库性能优化的关键技术之一,其主要目的是加快数据检索的速度。在MySQL中,索引是通过B-Tree(B树)数据结构来实现的。本文将重点...

    mysql中or是否走索引详解

    2. **覆盖索引**:如果`OR`操作符连接的条件都在同一个索引的所有列中,那么这个索引被称为覆盖索引,MySQL可以只使用索引来完成查询,而无需回表,这样会提高查询效率。 3. **索引合并(Index Merge)**:MySQL ...

    MySQL索引操作命令详解

    [UNIQUE|FULLTEXT|SPATIAL]:中括号中的三个关键字表示创建的索引类型,他们分别表示唯一索引、全文索引、空间索引三种不同的索引类型。如果我们不指定任何关键字,则默认为普通索引。 index_name:表示索引的名字,...

    mysql索引和锁机制ppt介绍

    ### MySQL索引和锁机制详解 #### 一、索引基础 **索引定义:** 索引是MySQL中用于提高查询效率的一种数据结构。通过索引可以在数据表中快速定位到所需的数据行,大大减少不必要的全表扫描。 **索引的重要性:** 1....

    mysql面试题,以及经典的索引问题详解

    本文将深入探讨MySQL面试中的常见问题,特别是与索引相关的经典问题。 首先,我们要了解什么是索引。索引是数据库管理系统用于快速查找数据的一种数据结构,类似于书籍的目录。它允许数据库系统不必扫描整个表就能...

    面试mysql 之索引 锁 事物

    ### MySQL索引、锁与事务详解 #### 一、索引 **索引定义与作用:** 索引是一种数据结构,用于加速数据检索的过程。它通过建立数据表中某些列的值与行的位置之间的映射关系,使得数据库系统能够快速定位到所需的...

    MySQL索引分析和优化.pdf

    ### MySQL索引分析与优化详解 #### 一、引言 在现代数据库管理系统中,索引扮演着极其重要的角色。合理的索引设计不仅能显著提升查询性能,还能优化数据的存储结构,进而提高整个系统的响应速度。本文将深入探讨...

    怎样正确创建MySQL索引的方法详解

    索引类似大学图书馆建书目索引,可以提高数据检索的效率,降低...Mysql索引主要有两种结构:B+Tree索引和Hash索引。我们平常所说的索引,如果没有特别指明,一般都是指B树结构组织的索引(B+Tree索引)。索引如图所示:

Global site tag (gtag.js) - Google Analytics