(7)mysql索引的設計和使用,mysql索引設計

來源:互聯網
上載者:User

(7)mysql索引的設計和使用,mysql索引設計
概述

  索引用於快速找出在某個列中有一特定值的行。不使用索引,MySQL必須從第1條記錄開始然後讀完整個表直到找出相關的行。表越大,花費的時間越多。如果表中查詢的列有一個索引,MySQL能快速到達一個位置去搜尋到資料檔案的中間,沒有必要看所有資料。
  在MySQL中所有的類型資料列都可以被索引,對相關列使用索引是提高select操作效能的最佳途徑。MyISAM和InnoDB儲存引擎的表預設建立索引都是BTREE索引。MyISAM還支援全文本索引,該索引可以用於建立全文檢索搜尋。預設情況下, MEMORY儲存引擎使用HASH索引,但也支援BTREE索引。

設計索引原則 說明:

建立表(friends)

建立(uid和fuid的複合索引)。

  • 對第4條說明:

    第2條語句,從索引的第二列開始尋找,使用索引失敗,導致MySQL採用ALL存取原則,即全表查詢.在開發中,應該盡量避免全表查詢。
  • 對第7條說明:

    第2和3條語句都有使用運算式,索引派不上用場。
參考

參考1:http://thephper.com/?p=142
參考2:http://my.oschina.net/longniao/blog/110384

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.