什麼是資料庫引擎
資料庫儲存引擎是資料庫底層軟體組織,資料庫管理系統(dbms)使用資料引擎進行建立、查詢、更新和刪除資料。
不同的儲存引擎提供不同的儲存機制、索引技巧、鎖定水平等功能,使用不同的儲存引擎,還可以獲得特定的功能。
現在許多不同的資料庫管理系統都支援多種不同的資料引擎。
mysql的核心就是儲存引擎。
檢視資料庫引擎
show engines
注:support中為default的為預設的引擎;
為yes表示可以使用;
為no表示不能使用。
四大引擎
1)isam引擎
是乙個定義明確且歷經時間考驗的資料**管理方法,它在設計之時就考慮到資料庫被查詢的次數要遠大於更新的次數。
因此,isam執行讀取操作的速度很快,而且不占用大量的記憶體和儲存資源。
isam的主要不足之處在於,它不支援事務處理、不支援外來鍵、不能夠容錯、也不支援索引。
因為isam不支援事務,所以如果你的硬碟崩潰了,那麼資料檔案就無法恢復了。
所以如果你正在把isam用在關鍵任務應用程式裡,那就必須經常備份你所有的實時資料,通過其複製特性,mysql能夠支援這樣的備份應用程式。
2)myisam引擎
myisam是mysql的isam擴充套件格式。
除了提供isam裡所沒有的索引(isam允許沒有任何索引和主鍵的表存在,索引都是儲存行的位址)和字段管理的大量功能,myisam還使用一
種**鎖定的機制(表級鎖),來優化多個併發的讀寫操作,其代價是你需要經常執行optimize table命令,來恢復被更新機制所浪費的空間,否則碎片也會隨之增加,最終影響資料訪問效能。
myisam強調了快速讀取操作,這可能就是為什麼mysql受到了web開發如此青睞的主要原因:在web開發中你所進行的大量資料操作都是讀取操
作。所以,大多數虛擬主機提供商和internet平台提供商只允許使用myisam格式。
3)heap引擎
heap儲存引擎就是將資料儲存在記憶體中,由於沒有磁碟i./o的等待,所以使用該種引擎的表擁有極高的插入、更新和查詢效率。這種儲存
引擎預設使用雜湊(hash)索引,其速度比使用b-+tree型要快,但也可以使用b樹型索引。由於這種儲存引擎所儲存的資料儲存在記憶體中,所以其儲存的資料具有不穩定性,比如如果mysqld程序發生異常、重啟或計算機關機等等都會造成這些資料的消失,所
以這種儲存引擎中的表的生命週期很短,一般只使用一次。
4)innodb引擎
innodb資料庫引擎是早就mysql靈活性的技術的直接產品,這項技術就是mysql+api,在使用mysql的時候,你所面對的每乙個挑戰幾乎都
源於isam和myisam資料庫引擎,支援事務處理也支援外來鍵。
innodb的特點:
innodb要比isam和myisam引擎慢
mysql引擎,事務 (隔離級別,四大特性)
讀未提交,顧名思義,就是乙個事務可以讀取另乙個未提交事務的資料。讀已提交,顧名思義,就是乙個事務要等另乙個事務提交後才能讀取資料。可重複讀,就是在開始讀取資料 事務開啟 時,不再允許修改操作 可序列化是最高的事務隔離級別,在該級別下,事務序列化順序執行,可以避免髒讀 不可重複讀與幻讀。但是這種事務隔...
MySQL的賬號管理 建庫和四大引擎
create user 使用者名稱 identified by 密碼 select host,user,password from user set password for 使用者名稱 password 新密碼 flush privileges drop user 使用者名稱grant privi...
IE9四大渲染引擎模式
關於ie9,微軟逐漸提供越來越多的內容。很多人想知道ie9有多少模式和渲染引擎,今天ie專案主管marc silbey就此問題進行了解答。silbey描述了ie9的四種模式 ie9標準模式 quirks模式 ie7標準模式 ie8標準 模式。首先要說的是ie9標準模式,這是ie9在標準相容 互操作性...