• 数据库存储引擎


    MySQL中提到了存储引擎这个概念。简而言之,存储引擎就是表的类型。数据库的存储引擎决定了表在计算机中的存储方式。

    SHOW ENGINES语句可以查看MySQL数据库支持的存储引擎。

    InnoDB存储引擎

           InnoDB存储引擎给MySQL的表提供了事物,回滚,崩溃修复和多版本并发控制的事物安全。InnoDB是MySQL上第一个提供了外键约束的表引擎。而且InnoDB对事务处理的能力,也是其他存储引擎无法比拟的。

           InnoDB存储引擎支持外键FOREIGN KEY。外键所在的表为子表,外键所依赖的表为父表。父表中被子表外键关联的字段必须为主键。当删除,更新父表的某条信息时,子表也必须有相应的改变。

           InnoDB创建的表的结构存储在.frm文件中。

           InnoDB存储引擎的优势就在于提供了良好的事务管理,崩溃修复等功能。缺点就是读写效率稍差,占用的数据空间相对比较大。

    MyISAM存储引擎

           MyISAM曾经是MySQL的默认存储引擎。它将表存储成为3个文件。文件的名字与表的名字相同。扩展名包括frm,NYD,MYI。其中frm文件存储表的结构;NYD文件存储表的数据;MYI文件存储表的索引。

           它的优点是占用空间小,处理速度快。缺点是不支持事务的完整性和并发性。

    Memory存储引擎

           使用存储在内存中的内容来创建表,而且所有数据也放在内存中。每个基于MEMORY存储引擎的表实际对应一个磁盘文件。该文件的文件名与表名相同,类型为frm类型。该文件值存储表的结构。而其数据文件,都是存储在内存中的。这样有利于数据的快速处理,提高整个表的处理效率。服务器要有足够的内存来为止MEMORY存储引擎表的使用。

           MEMORY存储引擎默认使用HASH索引。其速度要比B树快。

     
  • 相关阅读:
    首位相连数组求最大子数组的和
    第四周学习进度报告
    求二维数组中子数组的最大值
    第三周学习进度总结
    数组从文件读取判断子数组的最大值
    CI项目设计Redis队列
    list
    zset
    NodeJS框架一览
    nginx虚拟主机配置
  • 原文地址:https://www.cnblogs.com/php-rearch/p/4042203.html
Copyright © 2020-2023  润新知