InnoDB和MyISAM的区别

发布时间:2022-06-27 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了InnoDB和MyISAM的区别脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

InnoDB和MyISam的区别

几个常用的命令

--查看创建数据库的语句
SHOW CREATE DATABASE school;
-- 查询出的结果 CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */

--查看创建表的语句
SHOW CREATE TABLE `teacher`;
/*
CREATE TABLE `teacher` (
  `id` int(4) NOT NULL COMMENT '老师工号',
  `name` vArchar(30) DEFAULT '匿名' COMMENT '姓名',
  `age` int(3) DEFAULT '0' COMMENT '年龄',
  `sex` VARchar(2) NOT NULL DEFAULT '女' COMMENT '年龄',
  `birthday` datetime DEFAULT NULL COMMENT '出生日期',
  `adress` varchar(50) DEFAULT NULL COMMENT '家庭住址',
  `email` varchar(2) DEFAULT NULL COMMENT '子邮箱',
  Primary KEY (`id`)
) ENginE=MyISAM DEFAULT CHARSET=utf8
*/

--查看表结构
DESC `teacher`;

InnoDB vs. MyISAM

数据库引擎

InnoDB 默认使用~

MyISAM 早些年使用的

MyISAM InnoDB
事务支持 不支持 支持
数据行锁定 不支持 支持
外键约束 不支持 支持
全文索引 支持 不支持
表空间的大小 较小 是MYISAM表空间的两倍

常规使用操作

  • MYISAM 节约空间,速度较快
  • INNODB 安全性高,事务的处理,多表多用户操作

在物理空间存在的位置

所有的数据库文件都存在data目录下

本质上还是文件的存储

MySQL引擎在物理文件上的区别

  • innoDB在数据库表中只有一个*.frm文件,以及上级目录下的ibdata1文件
  • MyISAM对应的文件
    • *.frm 表结构的定义文件
    • *.MYD 数据文件(data) MY表示MyISAM
    • *.MYI 索引文件(index)

设置数据库表的字符集编码

CHARSET=utf8

建议在建表的时候都加上

脚本宝典总结

以上是脚本宝典为你收集整理的InnoDB和MyISAM的区别全部内容,希望文章能够帮你解决InnoDB和MyISAM的区别所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。