亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長(zhǎng)資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

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

    本篇文章給大家?guī)?lái)了關(guān)于mysql索引的相關(guān)知識(shí),其中包括mysql的邏輯架構(gòu)和sql執(zhí)行語(yǔ)句,希望對(duì)大家有幫助。

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

    一、MySQL三層邏輯架構(gòu)

    MySQL的存儲(chǔ)引擎架構(gòu)將查詢處理與數(shù)據(jù)的存儲(chǔ)/提取相分離。下面是MySQL的邏輯架構(gòu)圖:

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

    1、第一層負(fù)責(zé)連接管理、授權(quán)認(rèn)證、安全等等。

    每個(gè)客戶端的連接都對(duì)應(yīng)著服務(wù)器上的一個(gè)線程。服務(wù)器上維護(hù)了一個(gè)線程池,避免為每個(gè)連接都創(chuàng)建銷(xiāo)毀一個(gè)線程。當(dāng)客戶端連接到MySQL服務(wù)器時(shí),服務(wù)器對(duì)其進(jìn)行認(rèn)證。可以通過(guò)用戶名和密碼的方式進(jìn)行認(rèn)證,也可以通過(guò)SSL證書(shū)進(jìn)行認(rèn)證。登錄認(rèn)證通過(guò)后,服務(wù)器還會(huì)驗(yàn)證該客戶端是否有執(zhí)行某個(gè)查詢的權(quán)限。

    2、第二層負(fù)責(zé)解析查詢

    編譯SQL,并對(duì)其進(jìn)行優(yōu)化(如調(diào)整表的讀取順序,選擇合適的索引等)。對(duì)于SELECT語(yǔ)句,在解析查詢前,服務(wù)器會(huì)先檢查查詢緩存,如果能在其中找到對(duì)應(yīng)的查詢結(jié)果,則無(wú)需再進(jìn)行查詢解析、優(yōu)化等過(guò)程,直接返回查詢結(jié)果。存儲(chǔ)過(guò)程、觸發(fā)器、視圖等都在這一層實(shí)現(xiàn)。

    3、第三層是存儲(chǔ)引擎

    存儲(chǔ)引擎負(fù)責(zé)在MySQL中存儲(chǔ)數(shù)據(jù)、提取數(shù)據(jù)、開(kāi)啟一個(gè)事務(wù)等等。存儲(chǔ)引擎通過(guò)API與上層進(jìn)行通信,這些API屏蔽了不同存儲(chǔ)引擎之間的差異,使得這些差異對(duì)上層查詢過(guò)程透明。存儲(chǔ)引擎不會(huì)去解析SQL。

    二、對(duì)比InnoDB與MyISAM

    1、 存儲(chǔ)結(jié)構(gòu)

    MyISAM:每個(gè)MyISAM在磁盤(pán)上存儲(chǔ)成三個(gè)文件。分別為:表定義文件、數(shù)據(jù)文件、索引文件。第一個(gè)文件的名字以表的名字開(kāi)始,擴(kuò)展名指出文件類(lèi)型。.frm文件存儲(chǔ)表定義。數(shù)據(jù)文件的擴(kuò)展名為.MYD (MYData)。索引文件的擴(kuò)展名是.MYI (MYIndex)。

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

    2、 存儲(chǔ)空間

    MyISAM: MyISAM支持支持三種不同的存儲(chǔ)格式:靜態(tài)表(默認(rèn),但是注意數(shù)據(jù)末尾不能有空格,會(huì)被去掉)、動(dòng)態(tài)表、壓縮表。當(dāng)表在創(chuàng)建之后并導(dǎo)入數(shù)據(jù)之后,不會(huì)再進(jìn)行修改操作,可以使用壓縮表,極大的減少磁盤(pán)的空間占用。

    InnoDB: 需要

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)