mysql两种存储引擎innodb和myisam的区别

    xiaoxiao2021-04-17  41

    innodb:

    支持事务,外键,行级锁(行级锁只支持where条件中有主键的sql)

    不支持全文索引(fulltext)

    不支持 load data from master

    不保存表的具体行数 

    主键必须有独立索引

    myisam:

    适合小型项目,读的性能强于innodb,数据以文件格式存储,恢复起来比较方便

    索引和数据分开独立, 索引有压缩,比innodb体积小很多

    用事务的项目用innodb

    附:事务解释

    原子性: 确保工作单元内的所有操作都成功完成,否则事务将被中止在故障点,和以前的操作将回滚到以前的状态。

    一致性: 确保数据库正确地改变状态后,成功提交的事务。

    隔离性: 使事务操作彼此独立的和透明的。

    持久性: 确保提交的事务的结果或效果的系统出现故障的情况下仍然存在。

    在MySQL中,事务开始使用COMMIT或ROLLBACK语句开始工作和结束。开始和结束语句的SQL命令之间形成了大量的事务。

    COMMIT & ROLLBACK:  这两个关键字提交和回滚主要用于MySQL的事务。

    当一个成功的事务完成后,发出COMMIT命令应使所有参与表的更改才会生效。

    如果发生故障时,应发出一个ROLLBACK命令返回的事务中引用的每一个表到以前的状态。

    转载请注明原文地址: https://ju.6miu.com/read-673829.html

    最新回复(0)