PostgreSQL學習(2)-- mvcc

來源:互聯網
上載者:User

標籤:並發   永久   可重複   get   order   其他   set   https   資料庫事務   

  在資料庫中,並發的操作進行讀寫資料,則會遇到髒讀、不可重複讀取、幻讀、序列化異常等問題。

  資料庫事務的特性: 

  1. 原子性(Atomicity):事務作為一個整體被執行,包含在其中的對資料庫的操作要麼全部被執行,要麼都不執行;
  2. 一致性(Consistency):事務應確保資料庫的狀態從一個一致狀態轉變為另一個一致狀態。一致狀態的含義是資料庫中的資料應滿足完整性條件約束;
  3. 隔離性(Isolation):多個事務並發執行時,一個事務的執行不應影響其他事務的執行;
  4. 持久性(Durability):一個事務一旦提交,他對資料庫的修改應該永久儲存在資料庫中。
  資料庫中存在4種交易隔離等級,讀未提交、讀已提交、可重複讀和可序列化。  PostgreSQL在9.3版本後,已經支援了這四種標準的交易隔離等級。可以通過SET TRANSACTION命令設定當前事務的隔離等級(Transaction Isolation)。
PostgreSQL交易隔離等級和對應資料庫問題的關係
隔離等級 髒讀  不可重複讀取 幻讀 序列化異常
讀未提交 允許,但pg不支援 可能 可能 可能
讀已提交 不可能 可能 可能 可能
可重複讀 不可能 不可能 允許,但pg不支援 可能
可序列化 不可能 不可能 不可能 不可能

 

  從上表中可以看到在PostgreSQL中,“讀未提交”隔離等級,不允許髒讀;“可重複讀”隔離等級,不允許幻讀。

  

 

PostgreSQL學習(2)-- mvcc

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.