站長資訊網
        最全最豐富的資訊網站

        完全掌握mysql的索引技巧(總結分享)

        本篇文章給大家帶來了關于mysql索引的相關知識,其中包括mysql的邏輯架構和sql執行語句,希望對大家有幫助。

        完全掌握mysql的索引技巧(總結分享)

        一、MySQL三層邏輯架構

        MySQL的存儲引擎架構將查詢處理與數據的存儲/提取相分離。下面是MySQL的邏輯架構圖:

        完全掌握mysql的索引技巧(總結分享)

        1、第一層負責連接管理、授權認證、安全等等。

        每個客戶端的連接都對應著服務器上的一個線程。服務器上維護了一個線程池,避免為每個連接都創建銷毀一個線程。當客戶端連接到MySQL服務器時,服務器對其進行認證。可以通過用戶名和密碼的方式進行認證,也可以通過SSL證書進行認證。登錄認證通過后,服務器還會驗證該客戶端是否有執行某個查詢的權限。

        2、第二層負責解析查詢

        編譯SQL,并對其進行優化(如調整表的讀取順序,選擇合適的索引等)。對于SELECT語句,在解析查詢前,服務器會先檢查查詢緩存,如果能在其中找到對應的查詢結果,則無需再進行查詢解析、優化等過程,直接返回查詢結果。存儲過程、觸發器、視圖等都在這一層實現。

        3、第三層是存儲引擎

        存儲引擎負責在MySQL中存儲數據、提取數據、開啟一個事務等等。存儲引擎通過API與上層進行通信,這些API屏蔽了不同存儲引擎之間的差異,使得這些差異對上層查詢過程透明。存儲引擎不會去解析SQL。

        二、對比InnoDB與MyISAM

        1、 存儲結構

        MyISAM:每個MyISAM在磁盤上存儲成三個文件。分別為:表定義文件、數據文件、索引文件。第一個文件的名字以表的名字開始,擴展名指出文件類型。.frm文件存儲表定義。數據文件的擴展名為.MYD (MYData)。索引文件的擴展名是.MYI (MYIndex)。

        InnoDB:所有的表都保存在同一個數據文件中(也可能是多個文件,或者是獨立的表空間文件),InnoDB表的大小只受限于操作系統文件的大小,一般為2GB。

        2、 存儲空間

        MyISAM: MyISAM支持支持三種不同的存儲格式:靜態表(默認,但是注意數據末尾不能有空格,會被去掉)、動態表、壓縮表。當表在創建之后并導入數據之后,不會再進行修改操作,可以使用壓縮表,極大的減少磁盤的空間占用。

        InnoDB: 需要

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产成人综合久久精品尤物| 亚欧无码精品无码有性视频| 日韩人妻无码精品无码中文字幕| 国产欧美国产精品第一区| 亚洲av午夜成人片精品电影| 99久久精品国产一区二区三区| 99久久人妻无码精品系列蜜桃| 亚洲欧美精品午睡沙发| 精品人妻少妇一区二区三区| 国产精品成人观看视频免费 | 久久国产成人精品国产成人亚洲| 国产精品视频久久| 国产精品日本一区二区在线播放 | 久久久99精品一区二区| 99久久精品国产一区二区蜜芽| 精品久久久久久综合日本| 99久久99久久久精品齐齐| 人妻熟妇乱又伦精品视频| 在线观看自拍少妇精品| 欧美精品VIDEOSEX极品| 久久国产成人精品国产成人亚洲| 国产精品天干天干在线综合| 隔壁老王国产在线精品| 亚洲成人精品久久| 秋霞午夜鲁丝片午夜精品久| 久久精品这里热有精品| 精品国产欧美一区二区| 91精品国产自产在线观看永久| 国产精品9999久久久久| 国自产偷精品不卡在线| 久久成人国产精品| 欧美成人精品高清在线观看| 日韩欧精品无码视频无删节| 亚洲精品国产品国语在线| 午夜天堂精品久久久久| 爽爽精品dvd蜜桃成熟时电影院| 久久夜色精品国产噜噜麻豆| 精品无码av一区二区三区| 精品久久久久香蕉网| 久久精品中文騷妇女内射| 久久久久女人精品毛片|