MySQL資料庫的原理

2021-08-20 04:02:41 字數 919 閱讀 7316

首先要了解原理。不得不說說。mysql的執行流程。

mysql是乙個單程序的服務,對於每乙個請求都是用執行緒來響應的。這就需要乙個聯結器來處理新使用者的請求、響應以及銷毀。

1.客戶端請求,服務端(聯結器)開啟執行緒響應使用者

2.使用者發起sql語句查詢資料庫

3.查詢快取:記錄使用者的sql查詢語句。如果查詢同樣內容,就返回快取。

4.如果快取中沒有對應的結果,則進入分析器。(分析器也可能借鑑快取)

不得不說說:

語法分析器。使用者命令語法是否正確。將使用者的命令進行切片,乙個詞乙個詞用空格隔開,獲得使用者要查詢的表、內容、許可權等。

5.優化:執行路徑的選擇,生成執行樹。每乙個sql語句都有很多執行路徑。優化的目的就是在這些執行路徑裡面,選擇乙個最優的執行路徑。

6.儲存引擎:用於管理儲存在檔案系統或是裸裝置上的資料管理程式。它本身給上層應用提供不同的管理,有的支援事務,有的不支援事務。

我們在來了解一下資料庫的物件

邏輯物件:表,索引,檢視,觸發器,儲存過程,儲存函式,時間排程器,游標,使用者。

物理物件:資料管理元件(也可稱為元資料),儲存引擎,儲存為物理檔案。

資料庫管理系統的基本功能:

管理儲存,安全管理,元資料管理,事務管理,acid(原子性,一致性,隔離性,永續性),連線管理,效能優化,備份和還原機制,相應資料查詢/修改請求。

儲存引擎:將資料儲存下來的中間層

myisam,innodb,ndb,archive,federated,memory,merge,partner,community,custom

rawdevice:裸裝置,沒有格式化。

其中,mysql資料庫引擎:

myisam和innodb

日誌檔案:redo、undo、data、index、error、query、slow

其他與此相關的文章:

mysql資料庫原理

mysql資料庫原理 一連線層介紹 1 檢查使用者與密碼正確性,提供乙個於sql層進行互動的執行緒。2 接收sql層sql語句於儲存引擎層互動找到的資料結構化成表的形式進行返回sql層 連線層只要有連線不斷連線層就會一直有 1 接受sql語句並且檢查語法正確性 2 檢查語義 ddl dcl dml ...

Mysql 資料庫儲存的原理??

儲存過程是乙個可程式設計的函式,它在資料庫中建立並儲存。它可以有 sql 語句和一些特殊的控制結 構組成。當希望在不同的應用程式或平台上執行相同的函式,或者封裝特定功能時,儲存過程是非常有用的。資料庫中的儲存過程可以看做是對程式設計中物件導向方法的模擬。它允許控制資料的訪問方式。存 儲過程通常有以下...

Mysql資料庫儲存原理

mysql儲存過程是一組為了完成特定功能的sql語句集,經過編譯之後儲存在資料庫中,當需要使用該組sql語句時使用者只需要通過指定儲存過程的名字並給定引數就可以呼叫執行它了,簡而言之就是一組已經寫好的命令,需要使用的時候拿出來用就可以了。想要快速的了解mysql儲存過程嗎,就一同看一下下文的 mys...