7种日志文件:
重做日志(rdolog)回滚日志(undolog)二进制日志(binlog)错误日志(rrorlog)慢查询日志(slowqurylog)一般查询日志(gnrallog)中继日志(rlaylog)
事务的4大特性ACID。
一个很好的事务处理系统,必须具备这些标准特性:
原子性(Atomicity):一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚。一致性(consistncy):数据库总是从一个一致性的状态转换到另一个一致性的状态。(其实原子性和隔离性间接的保证了一致性)隔离性(isolation):通常来说,一个事务所做的修改在最终提交以前,对其他事务是不可见的。持久性(durability):一旦事务提交,则其所做的修改就会永久保存到数据库中。
重做日志(rdolog)
利用WAL技术(Writ-Ahad-Logging,即先写日志,后写磁盘)推迟物理数据页的刷新,从而提升数据库吞吐,有效降低了访问时延。
rdolog是InnoDB引擎特有的:binlog是MySQL的Srvic层实现的,所有的引擎都可以使用
rdolog提供了crash-saf的能力,即使MySQL异常重启,之前提交的记录也不会丢失。
rdolog是物理日志,记录的是在某一个数据页面上做了什么修改,binlog是逻辑日志,记录的是这个语句的原始逻辑
rdolog是固定大小的,从头开始写,写到末尾之后又回头开头循环写,binlog是可以追加写当到达一定大小后会切换到下一个不会覆盖之前的日志
rdolog的写入分成了prpar和