数据库的三范式
1.第一范式:满足列的原子性,即每一列都是不可分割的原子数据项
2.第二范式:满足第一范式,满足实体属性完全依赖主关键字,不能存在仅依赖关键字的一部分的属性
3.第三范式:满足第二范式,并且没有传递依赖。
ACID
原子性(Atomicity):一个事务中的所有操作,要不全部都完成,或全部不完成,不会结束在中间的莫格环节。若事务发生错误,则回滚恢复到事务开始之前的状态。
一致性(Consistency:在事务开始之前或事物开始之后的数据库的完整性没有被破坏。表示所有写入的内容必须完全符合预约设置,触发器,级联回滚。
隔离性(Isolation):数据库允许多个事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发操作时由于交叉执行导致数据的不一致。事务的隔离级别分为:读未提交,读提交,可重复读,串行化。
持久性(Durability):事务处理完成后,对数据的修改时永久的,即使系统故障也不会丢失。
MySQL索引的实现
MySQL的索引根据不同数据的数据引擎实现有所不同,但是目前主流的数据库引擎索引主要是B+树,B+树是B树的一个升级版,相对于B树来说B+树更充分的利用了节点的空间,让查询速度更加稳定,其速度完全接近于二分法查找。