• MySQL存储引擎


    最近工作使用PHP操作MYSQL时遇到一个BUG 事务控制居然失效了,出现异常居然没有回滚数据.

    后面经过别人提示是MySQL存储引擎的原因:

    存储引擎:

    mysql的存储引擎包括:MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDBCluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB提供事务安全表,其他存储引擎都是非事务安全表。
      最常使用的2种存储引擎:
      1.Myisam是Mysql的默认存储引擎,当create创建新表时,未指定新表的存储引擎时,默认使用Myisam。每个MyISAM在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别是.frm(存储表定义)、.MYD(MYData,存储数据)、.MYI(MYIndex,存储索引)。数据文件和索引文件可以放置在不同的目录,平均分布io,获得更快的速度。
      2.InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比Myisam的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

    查看系统支持的引擎:

    show engines;

    查看指定表的引擎:

    show create table `table_name`;

    修改表的存储引擎:

    alter table `table_name` type=InnoDB;

    其中有一张表的引擎使用的是MyISAM,将其修改为InnoDB引擎

  • 相关阅读:
    PSP第二次总结
    周总结02
    四则运算2
    构建执法阅读笔记01
    周学习进度01
    暑假生活一
    构建之法阅读笔记03
    构建之法阅读笔记02
    个人课程总结
    软工大二下半年第十六周学习进度
  • 原文地址:https://www.cnblogs.com/sybk/p/10004705.html
Copyright © 2020-2023  润新知