中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行Mysql索引優化

發布時間:2021-11-03 10:51:46 來源:億速云 閱讀:173 作者:柒染 欄目:大數據

本篇文章為大家展示了如何進行Mysql索引優化,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

點擊上方“程序員小明”,選擇“星標”

今晚可以不加班!

如何進行Mysql索引優化

 

Mysql的歷史

簡單回顧一下Mysql的歷史,Mysql 是一個關系型數據庫管理系統,由瑞典 Mysql AB 公司開發,目前屬于 Oracle 公司。關系型數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性。

 

Mysql的優勢

  • Mysql 是開源的,所以你不需要支付額外的費用。

  • Mysql 支持大型的數據庫。可以處理擁有上千萬條記錄的大型數據庫。

  • Mysql 使用標準的 SQL 數據語言形式。

  • Mysql 可以運行于多個系統上,并且支持多種語言。

  • Mysql 是可以定制的,采用了 GPL 協議,你可以修改源碼來開發自己的 Mysql 系統。

 

索引的存儲分類

索引是在MYSQL的存儲引擎層中實現的,而不是在服務層實現的。所以每種存儲引擎的索引都不一定完全相同,也不是所有的存儲引擎都支持所有的索引類型。MYSQL目前提供了一下4種索引。

 

Normal 普通索引

基本的索引類型,大多數情況下都可以使用。

 

Unique 唯一索引

表示唯一的,不允許重復的索引,如果該字段信息保證不會重復,例如身份證號用作索引時,可設置為unique。Unique和Primary Key為列或列集合提供了唯一性的保證,Primary Key是擁有自動定義的Unique約束,但是每個表中可以有多個Unique約束,但是只能有一個Primary Key約束。

 

Full Text 全文索引

全文索引可以在varchar、char、text類型的列上創建。MyISAM支持全文索引,InnoDB在mysql5.6之后支持了全文索引。FULLTEXT 用于搜索很長一篇文章的時候,效果最好。用在比較短的文本,如果就一兩行字的,普通的 INDEX 也可以。

 

SPATIAL 空間索引

空間索引是對空間數據類型的字段建立的索引,MYSQL中的空間數據類型有4種,分別是GEOMETRY(幾何)、POINT(點)、LINESTRING(線)、POLYGON(多邊形)。MYSQL使用SPATIAL關鍵字進行擴展,使得能夠用于創建正規索引類型的語法創建空間索引。創建空間索引的列,必須將其聲明為NOT NULL,空間索引只能在存儲引擎為MYISAM的表中創建。

 

我對索引的一些看法

  • MySQL官方對索引的定義為:索引(Index)是幫助MySQL高效獲取數據的數據結構。提取句子主干,就可以得到索引的本質:索引是數據結構。


  • 數據庫查詢是數據庫的最主要功能之一。我們都希望查詢數據的速度能盡可能的快,因此數據庫系統的設計者會從查詢算法的角度進行優化。

  • 最基本的查詢算法當然是順序查找(linear search),這種復雜度為O(n)的算法在數據量很大時顯然是糟糕的,好在計算機科學的發展提供了很多更優秀的查找算法,例如二分查找(binary search)、二叉樹查找(binary tree search)等。

  • 如果稍微分析一下會發現,每種查找算法都只能應用于特定的數據結構之上,例如二分查找要求被檢索數據有序,而二叉樹查找只能應用于二叉查找樹上,但是數據本身的組織結構不可能完全滿足各種數據結構(例如,理論上不可能同時將兩列都按順序進行組織),所以,在數據之外,數據庫系統還維護著滿足特定查找算法的數據結構,這些數據結構以某種方式引用(指向)數據,這樣就可以在這些數據結構上實現高級查找算法。這種數據結構,就是索引。

  • 當你發現自己的查詢速度慢的時候,最快解決問題的方法就是使用索引。索引的使用是影響查詢速度的重要因素。在使用索引之前其他的優化查詢的動作純粹是浪費時間,只有合理地使用索引之后,才有必要考慮其他優化方式。

上述內容就是如何進行Mysql索引優化,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陆川县| 彭泽县| 扶余县| 龙门县| 张家川| 清涧县| 来安县| 鸡东县| 贡山| 淳化县| 石景山区| 舟曲县| 射洪县| 宣汉县| 姜堰市| 出国| 思茅市| 望城县| 威宁| 嫩江县| 沙田区| 浠水县| 日土县| 龙口市| 九龙坡区| 漠河县| 寿光市| 溧阳市| 隆安县| 玛沁县| 肃北| 邓州市| 荔波县| 明星| 岫岩| 博兴县| 永安市| 公主岭市| 突泉县| 类乌齐县| 阜康市|