码迷,mamicode.com
首页 > 数据库 > 详细

mysql 索引

时间:2016-11-28 20:28:43      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:新华   方式   一加   默认   strong   导数   log   let   快速   

什么是mysql索引?

    mysql的索引就好比:新华字典的目录;

       ---》现在把新华字典的目录撕掉,要在这本书里找出“”字,那么就得一页一页的翻直到找到“”字;

      没有如果以没有加索引的字段,为条件查询百万级的表,就好比把新华字典目录撕了找“华”字;效率低下;

结论:索引=目录(主键默认加索引)

      索引方式一:

      二叉树索引  查询:log2n次

      索引方式二:

      哈希索引(散列索引)理论上降为1次;

缺点:

  1.加索引后加快了查询的速度,在insert/update/delete 时,同时需要添加到索引里,降低了增删改的速度;

  2.索引文件占用空间,索引文件大于数据文件;

 

问题:

  某网站要换服务器,导数据,一张500万行的表

  table news(

  15列,其中10列加了索引;

  )

  该如何操作让其快速导入?

  如果直接导的话,插入一条建10个索引,插入一条建立一个索引;这样就建立了5000万条索引,效率低下;

 

  解决办法:先修改表去掉索引,导入后再加索引;因为统一加索引的速度快于一条一条加;

 

使用原则:

    1.不要过度索引

    2.在查询最频繁的条件上加索引:

          如在判断用户名时,在username加索引;

          在查询商品时,在商品名上加索引;  

          给散列值的加索引,碰撞性越多,值越集中的不易加索引,如性别:男/女;

 

索引的创建语法:

    

 

mysql 索引

标签:新华   方式   一加   默认   strong   导数   log   let   快速   

原文地址:http://www.cnblogs.com/demolzhi/p/6110509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!