innodb 儲存引擎特性

來源:互聯網
上載者:User

標籤:

使用獨立資料表空間後,系統資料表空間儲存什麼內容呢?

 

1.innodb 資料字典資訊

  和儲存引擎相關。

  frm 是伺服器的資料字典和儲存引擎無關。

2. undo 復原段。

  可以單獨儲存。

 

INNODB儲存引擎特性

1.事務性儲存引擎。

2.支援ACID特性

redo log 和 undo log

redo log 實現事務的持久性。

包括兩部分:

1.記憶體中的重做日誌緩衝區。

2.檔案系統的 ib_logfilex.

show variables like ‘innodb_log_buffer_size’ 位元組為單位。

記憶體中 預設 16M.

數量由參數innodb_log_files_in_group決定。

 

redo log 存放的是提交的事務,undolog 存放的是未提交的事務。

undo log 作用:

1.用於復原

2.多版本並發控制 (Multi-Version Concurrency Control )

當對錶中的資料進行修改時不僅產生redolog 也會產生一定的undo log。

使用rollback時會用到undolog。

redo log 為順序寫入,在資料庫運行時不需要讀取操作。

undo log 需要隨機讀寫。可以存放於SSD 上提升效能。

2.INNODB 支援行級鎖。

行級鎖可以最大程度支援並發。

行級鎖在儲存引擎層實現。

什麼是鎖?

鎖主要作用是管理共用資源的並發訪問,用於實現事務的隔離性。

鎖的類型

共用鎖定(讀鎖)

讀鎖相互不會被阻塞。

獨佔鎖 (寫鎖)

會阻塞其他的讀鎖和寫鎖。實現事務隔離性。

鎖的粒度

1.表級鎖

lock table myinnodb write;

這樣就會阻塞其他讀取。

unlock tables;

2.行級鎖

  在儲存引擎實現,不在伺服器層實現。

阻塞和死結

什麼是阻塞?

一個事務中的鎖需要等待另外一個事務鎖的資源釋放。

什麼是死結?

相互佔用對方的等待資源,可以由系統自動處理。

1.按照相同的順序使用資源。

2.增加相關的索引。

3.innodb 狀態檢查。

show engine innodb status; 兩次需要至少間隔30秒。

4.適用情境

  innodb 適合大多數的OLTP應用,支援全文索引和空間函數。

 

innodb 儲存引擎特性

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.