什么是存储引擎?
存储引擎可理解为对磁盘的操作方式,是一套存储数据的规范,Mysql是一个插拔式的存储引擎。默认的Innodb并不是由Mysql团队研发,而是由第三方公司研发产生。它的最重要作用是修饰表,每个表也可以用不同的存储引擎来修饰。Innodb优秀的设计使得Mysql5.5之后的版本默认使用Innodb引擎
事务概述
隔离性:事务是一组不可分割的操作集合。破坏事务隔离性是由数据并发访问导致,破坏事务隔离性导致的脏读,幻读,不可重复读三个问题。使用四种事务隔离级别解决这些问题,具体机制是Mvcc机制与LBcc机制。
原子性:关注是语句的执行状态,当发生事务内部故障会破坏原子性,保证原子性的机制是,UNDO log反向扫描日志,撤销已做的更新操作
Mysql默认设置会话级别的自动提交,即执行一条语句会自动提交事务,无法做到原子性保证。故我们要将多条语句变成一个事务的话需要关闭自动提交,设置为手动提交。
一致性:并发访问的可见性设定,关注的是数据的一致,当发生系统故障如:系统断电,DBMS代码错误时,这些情况可能会导致未完成的事务对数据库的更新肯已经写入数