亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于MySQL體系結(jié)構(gòu)的分析

 更新時(shí)間:2013年05月02日 11:22:12   作者:  
本篇文章介紹了,基于MySQL體系結(jié)構(gòu)的分析。需要的朋友參考下

了解MySql必須牢牢記住其體系結(jié)構(gòu)圖,Mysql是由SQL接口,解析器,優(yōu)化器,緩存,存儲(chǔ)引擎組成的

 

 

1 Connectors指的是不同語言中與SQL的交互

2 Management Serveices & Utilities: 系統(tǒng)管理和控制工具

3 Connection Pool: 連接池。

管理緩沖用戶連接,線程處理等需要緩存的需求

4 SQL Interface: SQL接口。

接受用戶的SQL命令,并且返回用戶需要查詢的結(jié)果。比如select from就是調(diào)用SQL Interface

5 Parser: 解析器。

SQL命令傳遞到解析器的時(shí)候會(huì)被解析器驗(yàn)證和解析。解析器是由Lex和YACC實(shí)現(xiàn)的,是一個(gè)很長的腳本。

主要功能:

a . 將SQL語句分解成數(shù)據(jù)結(jié)構(gòu),并將這個(gè)結(jié)構(gòu)傳遞到后續(xù)步驟,以后SQL語句的傳遞和處理就是基于這個(gè)結(jié)構(gòu)的 

b.  如果在分解構(gòu)成中遇到錯(cuò)誤,那么就說明這個(gè)sql語句是不合理的

6 Optimizer: 查詢優(yōu)化器。

SQL語句在查詢之前會(huì)使用查詢優(yōu)化器對(duì)查詢進(jìn)行優(yōu)化。他使用的是“選取-投影-聯(lián)接”策略進(jìn)行查詢。

用一個(gè)例子就可以理解: select uid,name from user where gender = 1;

這個(gè)select 查詢先根據(jù)where 語句進(jìn)行選取,而不是先將表全部查詢出來以后再進(jìn)行g(shù)ender過濾

這個(gè)select查詢先根據(jù)uid和name進(jìn)行屬性投影,而不是將屬性全部取出以后再進(jìn)行過濾

將這兩個(gè)查詢條件聯(lián)接起來生成最終查詢結(jié)果

7 Cache和Buffer: 查詢緩存。

如果查詢緩存有命中的查詢結(jié)果,查詢語句就可以直接去查詢緩存中取數(shù)據(jù)。

這個(gè)緩存機(jī)制是由一系列小緩存組成的。比如表緩存,記錄緩存,key緩存,權(quán)限緩存等

8 Engine :存儲(chǔ)引擎。

存儲(chǔ)引擎是MySql中具體的與文件打交道的子系統(tǒng)。也是Mysql最具有特色的一個(gè)地方。

Mysql的存儲(chǔ)引擎是插件式的。它根據(jù)MySql AB公司提供的文件訪問層的一個(gè)抽象接口來定制一種文件訪問機(jī)制(這種訪問機(jī)制就叫存儲(chǔ)引擎)

現(xiàn)在有很多種存儲(chǔ)引擎,各個(gè)存儲(chǔ)引擎的優(yōu)勢(shì)各不一樣,最常用的MyISAM,InnoDB,BDB

默認(rèn)下MySql是使用MyISAM引擎,它查詢速度快,有較好的索引優(yōu)化和數(shù)據(jù)壓縮技術(shù)。但是它不支持事務(wù)。

InnoDB支持事務(wù),并且提供行級(jí)的鎖定,應(yīng)用也相當(dāng)廣泛。 
Mysql也支持自己定制存儲(chǔ)引擎,甚至一個(gè)庫中不同的表使用不同的存儲(chǔ)引擎,這些都是允許的。

相關(guān)文章

  • php防止網(wǎng)站被攻擊的應(yīng)急代碼

    php防止網(wǎng)站被攻擊的應(yīng)急代碼

    這篇文章為大家提供了php防止網(wǎng)站被攻擊的應(yīng)急代碼,這是一個(gè)辦法,絕對(duì)不是最好的解決方式,只是想提供給大家,大家一起探討探討。
    2015-10-10
  • 在Win7 中為php擴(kuò)展配置Xcache

    在Win7 中為php擴(kuò)展配置Xcache

    XCache是一個(gè)又快又穩(wěn)定的PHP opcode緩存器.經(jīng)過良好的測(cè)試并在大流量/高負(fù)載的生產(chǎn)機(jī)器上穩(wěn)定運(yùn)行.經(jīng)過(在linux上)測(cè)試并支持所有現(xiàn)行PHP分支的最新發(fā)布版本,如php5.0~5.6(x64和x86),并支持線程安全/Windows.與同類opcode緩存器相比更勝一籌, 比如能夠快速跟進(jìn)PHP版本.
    2014-10-10
  • PHP的反射類ReflectionClass、ReflectionMethod使用實(shí)例

    PHP的反射類ReflectionClass、ReflectionMethod使用實(shí)例

    這篇文章主要介紹了PHP的反射類ReflectionClass、ReflectionMethod使用實(shí)例,本文同時(shí)介紹了反射是什么、反射可以做哪些事情,并給出一個(gè)具體例子,是一篇不錯(cuò)的入門文章,需要的朋友可以參考下
    2014-08-08
  • Zend Framework動(dòng)作助手(Zend_Controller_Action_Helper)用法詳解

    Zend Framework動(dòng)作助手(Zend_Controller_Action_Helper)用法詳解

    這篇文章主要介紹了Zend Framework動(dòng)作助手(Zend_Controller_Action_Helper)用法,詳細(xì)分析了動(dòng)作助手Zend_Controller_Action_Helper功能,定義,使用方法與相關(guān)實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2016-03-03
  • PHP生成壓縮文件實(shí)例

    PHP生成壓縮文件實(shí)例

    這篇文章主要介紹了PHP生成壓縮文件實(shí)例,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-02-02
  • PHP使用curl制作簡易百度搜索

    PHP使用curl制作簡易百度搜索

    這篇文章主要為大家詳細(xì)介紹了PHP使用curl制作簡易百度搜索的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Yii2.0建立公共方法簡單示例

    Yii2.0建立公共方法簡單示例

    這篇文章主要介紹了Yii2.0建立公共方法,結(jié)合實(shí)例形式分析了Yii2.0建立公共方法的基本原理、步驟與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-01-01
  • php通過PHPExcel導(dǎo)入Excel表格到MySQL數(shù)據(jù)庫的簡單實(shí)例

    php通過PHPExcel導(dǎo)入Excel表格到MySQL數(shù)據(jù)庫的簡單實(shí)例

    下面小編就為大家?guī)硪黄猵hp通過PHPExcel導(dǎo)入Excel表格到MySQL數(shù)據(jù)庫的簡單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • Yii2框架控制器、路由、Url生成操作示例

    Yii2框架控制器、路由、Url生成操作示例

    這篇文章主要介紹了Yii2框架控制器、路由、Url生成操作,結(jié)合實(shí)例形式分析了Yii2框架控制器、路由、url生成跳轉(zhuǎn)等相關(guān)原理及操作技巧,需要的朋友可以參考下
    2019-05-05
  • PHP智能識(shí)別收貨地址信息實(shí)例

    PHP智能識(shí)別收貨地址信息實(shí)例

    今天小編就為大家分享一篇關(guān)于PHP智能識(shí)別收貨地址信息實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01

最新評(píng)論