2mysql技術教程

安佰勝發表於2011-01-02


2mysql技術教程

======================

mysql體系結構

 mysql簡歷在一個層次體系結構上
 由住子系統和輔助部件組成
 他們之間呼吸那個配合

主子系統
由五個主子系統組成,他們協同工作,響應mysql資料庫伺服器發出的請求
五個子系統分別是:
 查詢引擎
 儲存管理器
 緩衝管理器
 事務管理器
 恢復管理器
 
---------
查詢引擎
包括三個相互關聯的部件:

語法分析器
查詢優化器
執行部件

----------

儲存管理器
 儲存管理器與作業系統想配合,有效的向磁碟存入資料。
 
----------

緩衝管理器
 記憶體管理

----------

事務管理器
 保證資料一致性,提供鎖

----------

恢復管理器


--------------------------

輔助部件

包含兩個輔助部件

過程管理器和函式庫

過程管理器:
 提供兩個功能:
 1通過與客戶連線的網路管理模組管理使用者連線
 2通過多執行緒、縣城加鎖和執行縣城安全操作模組使競爭性的任務和過程同步

函式庫:
 包含被其他所有子系統使用的通用例程
 包含字串處理程式
 排序操作程式
 記憶體管理
 檔案io等作業系統特定功能
 
--------------

mysql特性

事務:
支援以下特性

原子性
一致性
分離性
永續性

原子性:
 事務被定義為一系列動作,當一個或者多個sql語句作為一個單元執行時事務就發生了
 在事務中一個語句沒有完成,整個單元都會回滾。
 事務開始的標記為一個begin語句,知道釋出一個commit命令完成動作
一致性:
 當每一個事務使得系統處於一致狀態時 ,不管事務成功還是中途失敗,一致性都會存在
 mysql的一致性主要由日誌機制來處理
 日誌記錄資料庫所做的所有改變,併為事務恢復提供檢查跟蹤一句
 如果事務執行中途關機,mysql恢復程式將使用這些日誌來檢查事務是否順利完成,必要時回滾
 出了日誌程式外,明月三千里還提供了鎖定機制,保證組成事務的所有表、行和索引由初始化程式鎖定足夠長的時間,以便提交事務或者回滾事務
分離性:
 分離性意味著每個事務在各自的空間內發生,與系統內可能發生的其他事務相互獨立
 還意味著只有組成事務的全部事件序列完全被執行後,事務的結果才可見
永續性:
 永續性意味著即使在系統崩潰時,也要儲存已提交的事務所做的改變
 當一個事物完成並且資料庫的日誌被更新時,永續性就開始作用
 innodb對崩潰前最後一秒的資料變化情況有100%的永續性

----------------

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13177610/viewspace-684200/,如需轉載,請註明出處,否則將追究法律責任。

相關文章