• 技术文章 >数据库 >mysql教程

    mysql默认引擎是什么

    青灯夜游青灯夜游2022-06-14 17:15:16原创97

    MySQL5.5之前,默认引擎是“MyISAM”;从MySQL5.5版本开始,默认引擎是“InnoDB”,该引擎完全支持符合ACID和事务,支持外键、提交、回滚、前滚操作,表的大小最高可达64TB。在MySQL中,可以使用“SHOW ENGINES;”命令查看系统所支持的引擎类型以及默认引擎;输出结果中,DEFAULT关键字标识的引擎就是当前默认的存储引擎。

    本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

    数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。简而言之,存储引擎就是指表的类型。

    数据库的存储引擎决定了表在计算机中的存储方式。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。

    MySQL为其表提供各种存储引擎,如InnoDB、MyISAM、Memory、Merge、Archive、CSV、BLACKHOLE 等。

    在MySQL 5.5之前,当您创建表而未明确指定存储引擎时,MyISAM是默认存储引擎。从版本5.5开始,MySQL使用InnoDB作为默认存储引擎。

    可以使用SHOW ENGINES;语句查看系统所支持的引擎类型,结果如图所示。

    1.png

    Support 列的值表示某种引擎是否能使用,YES表示可以使用,NO表示不能使用,DEFAULT表示该引擎为当前默认的存储引擎。

    可以看出,当前默认的存储引擎是InnoDB。

    MyISAM 引擎

    MyISAM扩展了以前的ISAM存储引擎。MyISAM表针对压缩和速度进行了优化。MyISAM表也可以在平台和操作系统之间移植。

    MyISAM表的大小可以达到256TB,这是巨大的。此外,MyISAM表可以压缩为只读表以节省空间。在启动时,MySQL会检查MyISAM表是否存在损坏,甚至在出现错误时对其进行修复。MyISAM表不是事务安全的。

    InnoDB 引擎

    InnoDB表完全支持符合ACID和事务。它们也是性能的最佳选择。InnoDB表支持外键,提交,回滚,前滚操作。InnoDB表的大小最高可达64TB。

    与MyISAM一样,InnoDB表可在不同平台和操作系统之间移植。如有必要,MySQL还会在启动时检查和修复InnoDB表。

    MERGE 引擎

    MERGE表是一个虚拟表,它将多个MyISAM表组合在一起,这些表具有与一个表类似的结构。MERGE存储引擎也称为MRG_MyISAM引擎。MERGE表没有自己的索引; 它使用组件表的索引。

    使用MERGE表,可以在连接多个表时加快性能 。MySQL只允许您对MERGE表执行SELECT,DELETE,UPDATE和INSERT操作。如果DROP TABLE在MERGE表上使用MERGE语句,则仅删除规范。基础表不会受到影响。

    Memory 引擎

    内存表存储在内存中并使用哈希索引,因此它们比MyISAM表更快。内存表数据的生命周期取决于数据库服务器的正常运行时间。内存存储引擎以前称为HEAP。

    Archive 引擎

    归档存储引擎允许您将大量记录(用于归档)存储为压缩格式以节省磁盘空间。存档存储引擎在插入时压缩记录,并在读取时使用zlib库对其进行解压缩。

    归档表仅允许INSERT和SELECT语句。ARCHIVE表不支持索引,因此需要对表读取行进行全表扫描。

    CSV

    CSV存储引擎以逗号分隔值(CSV)文件格式存储数据。CSV表提供了一种将数据迁移到非SQL应用程序(如电子表格软件)的便捷方法。

    CSV表不支持NULL数据类型。此外,读取操作需要全表扫描。

    FEDERATED

    FEDERATED存储引擎可让您无需使用群集或复制技术管理从远程MySQL服务器的数据。本地联合表不存储任何数据。从本地联合表查询数据时,将从远程联合表中自动提取数据。

    【相关推荐:mysql视频教程

    以上就是mysql默认引擎是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:mysql
    上一篇:MySQL和Redis的区别有哪些 下一篇:mysql怎么查询两个字段的值
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 深入浅析怎么解决MySQL自增ID用完的问题• 带你搞懂MySQL启动失败的原因及解决办法• 图文实例解析MySQL的用户管理• 浅析MySQL删除方法:delete、truncate、drop的区别• mysql数据库角色的实例详解• 整理总结nginx、php-fpm和mysql等的权限划分
    1/1

    PHP中文网