溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL的ACID模式

發(fā)布時間:2020-08-05 03:19:37 來源:ITPUB博客 閱讀:237 作者:jx_yu 欄目:MySQL數(shù)據(jù)庫

InnoDB引擎遵循ACID原則,ACID主要指:

? A: atomicity.       原子性

? C: consistency        一致性

? I: isolation.         隔離性

? D: durability.        持久性

 

Atomicity 原子性

ACID原則中的原子性主要涉及InnoDB transactions,主要MySQL以下功能相關

? Autocommit setting.       自動提交設置

? COMMIT statement.        Commit語句

? ROLLBACK statement.    Rollback語句

? Operational data from the INFORMATION_SCHEMAtables.     INFORMATION_SCHEMA表操作數(shù)據(jù)

 

Consistency 一致性

ACID原則中的一致性主要包括innodb內部對crash情況下數(shù)據(jù)的保護處理,主要MySQL以下功能相關:

? InnoDB doublewrite buffer.    兩次寫

? InnoDB crash recovery.    實例恢復

 

Isolation 隔離性

ACID原則中的隔離性主要包括InnoDB transactions,尤其是事務隔離級別,主要MySQL以下功能相關:

? Autocommit setting.                          自動提交設置

? SET ISOLATION LEVEL statement.     設置事務隔離級別(四種:RU、RC、RR、SERIALIZABLE

? The low-level details of InnoDB locking. During performance tuning, you see these details through
INFORMATION_SCHEMA tables.         Innodb鎖的底層細節(jié),通過INFORMATION_SCHEMA下相關表獲得性能相關細節(jié)

 

Durability 持久性

ACID原則中的持久性主要包括MySQL運行相關的硬件配置。因為取決于你的CPU、網(wǎng)絡和存儲等,這方面是復雜的。

主要MySQL以下功能相關:

? InnoDB doublewrite buffer                  通過innodb_doublewrite選項開啟或關閉

? innodb_flush_log_at_trx_commit          刷新redo log的機制

? sync_binlog.                     刷新binlog的機制

? innodb_file_per_table.                 Innodb 表是單個文件存放

?存儲設備的寫緩存,如:磁盤驅動器、SSD或者RAID陣列

? 存儲設備中電池支持的緩沖

? 運行MySQL的操作系統(tǒng),特別是對fsync()系統(tǒng)調用的支持

? UPS保護

? 你的備份策略,如備份頻率、備份類型以及備份保留時間等

? 分布式架構的數(shù)據(jù)應用,其數(shù)據(jù)中心之間的硬件、網(wǎng)絡連接等

 

參考鏈接:http://dev.mysql.com/doc/refman/5.7/en/mysql-acid.html

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI