国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

加速PHP動態網站 關于MySQL索引分析優化

瀏覽:27日期:2024-07-06 10:49:35

本文主要講述了如何加速動態網站的MySQL索引分析和優化。

一、什么是索引?

索引用來快速地尋找那些具有特定值的記錄,所有MySQL索引都以B-樹的形式保存。如果沒有索引,執行查詢時MySQL必須從第一個記錄開始掃描整個表的所有記錄,直至找到符合要求的記錄。表里面的記錄數量越多,這個操作的代價就越高。如果作為搜索條件的列上已經創建了索引,MySQL無需掃描任何記錄即可迅速得到目標記錄所在的位置。如果表有1000個記錄,通過索引查找記錄至少要比順序掃描記錄快100倍。

假設我們創建了一個名為people的表:

CREATE TABLE people ( peopleid SMALLINT NOT NULL,

name CHAR(50) NOT NULL );

然后,我們完全隨機把1000個不同name值插入到people表。在數據文件中name列沒有任何明確的次序。如果我們創建了name列的索引,MySQL將在索引中排序name列,對于索引中的每一項,MySQL在內部為它保存一個數據文件中實際記錄所在位置的“指針”。因此,如果我們要查找name等于“Mike”記錄的peopleid(SQL命令為“SELECT peopleid FROM people WHERE name='Mike';”),MySQL能夠在name的索引中查找“Mike”值,然后直接轉到數據文件中相應的行,準確地返回該行的peopleid(999)。在這個過程中,MySQL只需處理一個行就可以返回結果。如果沒有“name”列的索引,MySQL要掃描數據文件中的所有記錄,即1000個記錄!顯然,需要MySQL處理的記錄數量越少,則它完成任務的速度就越快。

二、索引的類型

MySQL提供多種索引類型供選擇:

普通索引 :這是最基本的索引類型,而且它沒有唯一性之類的限制。普通索引可以通過以下幾種方式創建:

創建索引,例如CREATE INDEX <索引的名字> ON tablename (列的列表);

修改表,例如ALTER TABLE tablename ADD INDEX [索引的名字] (列的列表);

創建表的時候指定索引,例如CREATE TABLE tablename ( [...], INDEX [索引的名字] (列的列表) );

唯一性索引: 這種索引和前面的“普通索引”基本相同,但有一個區別:索引列的所有值都只能出現一次,即必須唯一。唯一性索引可以用以下幾種方式創建:

創建索引,例如CREATE UNIQUE INDEX <索引的名字> ON tablename (列的列表);

修改表,例如ALTER TABLE tablename ADD UNIQUE [索引的名字] (列的列表);

創建表的時候指定索引,例如CREATE TABLE tablename ( [...], UNIQUE [索引的名字] (列的列表) );

主鍵 :

主鍵是一種唯一性索引,但它必須指定為“PRIMARY KEY”。如果你曾經用過AUTO_INCREMENT類型的列,你可能已經熟悉主鍵之類的概念了。主鍵一般在創建表的時候指定,例如“CREATE TABLE tablename ( [...], PRIMARY KEY (列的列表) ); ”。但是,我們也可以通過修改表的方式加入主鍵,例如“ALTER TABLE tablename ADD PRIMARY KEY (列的列表); ”。每個表只能有一個主鍵。

全文索引:

MySQL從3.23.23版開始支持全文索引和全文檢索。在MySQL中,全文索引的索引類型為FULLTEXT。全文索引可以在VARCHAR或者TEXT類型的列上創建。它可以通過CREATE TABLE命令創建,也可以通過ALTER TABLE或CREATE INDEX命令創建。對于大規模的數據集,通過ALTER TABLE(或者CREATE INDEX)命令創建全文索引要比把記錄插入帶有全文索引的空表更快。

標簽: PHP
相關文章:
主站蜘蛛池模板: 久久香蕉精品成人 | 怡红院老首页主页入口 | 一本一道久久综合狠狠老 | 久久精品国产这里是免费 | 日韩黄色在线 | 自拍 第一页 | 毛片免费观看的视频 | 亚洲综合精品一二三区在线 | 国产呦精品一区二区三区网站 | 成年网站免费视频黄 | 怡红院男人的天堂 | 亚洲欧洲一区二区三区久久 | 欧美xxxxx九色视频免费观看 | 国产91精品露脸国语对白 | 日韩亚洲人成网站在线播放 | 视频偷拍一级视频在线观看 | 亚洲男人在线天堂 | 欧美三级超在线视频 | 日韩天天摸天天澡天天爽视频 | 一级毛片免费观看视频 | 二区在线观看 | 久久视精品 | 美女张开腿让男人捅的视频 | 久久精品一区二区三区日韩 | 美国一级免费毛片 | 中文字幕亚洲欧美日韩不卡 | 国产在线播放一区二区 | 日本免费大黄在线观看 | 免费播放特黄特色毛片 | 国产成人久久一区二区三区 | 9cao在线精品免费 | 欧美一区二区三区视频在线观看 | 最新国产一区二区精品久久 | 精品国产一区二区三区不卡蜜臂 | 久久免费精品国产视频 | 欧美成在线 | 欧洲一级毛片免费 | 久久99精品久久久久久久野外 | 免费一区区三区四区 | 91在线精品亚洲一区二区 | 狠狠做久久深爱婷婷97动漫 |