MySQL的ACID模式

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表操作数据

 

Consistency 一致性

ACID原则中的一致性主要包括innodb内部对crash情况下数据的保护处理,主要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锁的底层细节,通过informatION_SCHEMA下相关表获得性能相关细节

 

Durability 持久性

ACID原则中的持久性主要包括MysqL运行相关的硬件配置。因为取决于你的cpu、网络和存储等,这方面是复杂的。

主要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的操作系统,特别是对fsync()系统调用支持

? UPS保护

? 你的备份策略,如备份频率、备份类型以及备份保留时间等

? 分布式架构的数据应用,其数据中心之间的硬件、网络连接等

 

参考链接:http://dev.MysqL.com/doc/refman/5.7/en/MysqL-acid.html

相关文章

MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导...
在MySQL中,InnoDB引擎通过Next-Key Locking技术来解决幻读问...
在数据库事务管理中,Undo Log 和 Redo Log 是两种关键日志,...
case when概述 sql语句中的case语句与高级语言中的switch语句...
其实很简单,只是为了忘记,做个记录,用的时候方便。 不管是...
1.进入服务,找到mysql服务,在属性里找到mysql的安装路径 2...