mysql的静态表和动态表的区别,MyISAM和InnoDB的区别_MySQL
程序员文章站
2022-05-19 18:58:22
...
bitsCN.com
静态表字段长度固定,自动填充,读写速度很快,便于缓存和修复,但比较占硬盘,动态表是字段长度不固定,节省硬盘,但更复杂,容易产生碎片,速度慢,出问题后不容易重建。
3InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。
MyIASM是IASM表的新版本,有如下扩展:
二进制层次的可移植性。
NULL列索引。
对变长行比ISAM表有更少的碎片。
支持大文件。
更好的索引压缩。
更好的键吗统计分布。
更好和更快的auto_increment处理。
1.MySQL最大的优势在于MyISAM引擎下的简单SELECT,INSERT和UPDATE快速操作
2.MyISAM类型的数据文件可以在不同操作系统中COPY,这点很重要,布署的时候方便点。
以下是一些细节和具体实现的差别:
1.InnoDB不支持FULLTEXT类型的索引。
2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含 where条件时,两种表的操作是一样的。
本文出自“耶稣”
bitsCN.com推荐阅读
-
MySQL数据库存储过程和事务的区别讲解
-
MySQL中Decimal类型和Float Double的区别(详解)
-
实现MySQL定时批量检查表repair和优化表optimize table的shell脚本
-
关于Mysql存储引擎中InnoDB与Myisam的主要区别介绍
-
jsp中include指令静态导入和动态导入的区别详解
-
MySQL删除表操作实现(delete、truncate、drop的区别)
-
MySQL中datetime和timestamp的区别及使用详解
-
MySQL存储引擎以及MyISAM与InnoDB的区别详解
-
MySQL分区表的局限和限制详解
-
mysql幻读和不可重复读的区别介绍