MySQL的MyISAM和InnoDB引擎的主要区别是什么?
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,1.MyISAM不支持事务,而InnoDB支持。InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以最好是把多条SQL语句显示放在be
千家信息网最后更新 2026年11月03日MySQL的MyISAM和InnoDB引擎的主要区别是什么?1.MyISAM不支持事务,而InnoDB支持。InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以最好是把多条SQL语句显示放在begin和commit之间,
组成一个事务去提交。
2.InnoDB支持数据行锁定,MyISAM不支持行锁定,只支持锁定整个表。即MyISAM同一个表上的读锁和写锁是互斥的,MyISAM并发读写时如果等待队列中既有读请求又有写请求,默认写请求的优先级高,
即使读请求先到,所以MyISAM不适合于有大量查询和修改并存的情况,那样查询进程会长时间阻塞。因为MyISAM是锁表,所以某项读操作比较耗时会使其他写进程饿死。
3.InnoDB支持外键,MyISAM不支持。
4.InnoDB的主键范围更大,最大是MyISAM的2倍。
5.InnoDB不支持全文索引,而MyISAM支持。全文索引是指对char、varchar和text中的每个词(停用词除外)建立倒排序索引。MyISAM的全文索引其实没啥用,因为它不支持中文分词,必须由使用者分词
后加入空格再写到数据表里,而且少于4个汉字的词会和停用词一样被忽略掉。
6.MyISAM支持GIS数据,InnoDB不支持。即MyISAM支持以下空间数据对象:Point,Line,Polygon,Surface等。
7.没有where的count(*)使用MyISAM要比InnoDB快得多。因为MyISAM内置了一个计数器,count(*)时它直接从计数器中读,而InnoDB必须扫描全表。所以在InnoDB上执行count(*)时一般要伴随where,且
where中要包含主键以外的索引列。为什么这里特别强调"主键以外"?因为InnoDB中primary index是和raw data存放在一起的,而secondary index则是单独存放,然后有个指针指向primary key。
所以只是count(*)的话使用secondary index扫描更快,而primary key则主要在扫描索引同时要返回raw data时的作用较大。
组成一个事务去提交。
2.InnoDB支持数据行锁定,MyISAM不支持行锁定,只支持锁定整个表。即MyISAM同一个表上的读锁和写锁是互斥的,MyISAM并发读写时如果等待队列中既有读请求又有写请求,默认写请求的优先级高,
即使读请求先到,所以MyISAM不适合于有大量查询和修改并存的情况,那样查询进程会长时间阻塞。因为MyISAM是锁表,所以某项读操作比较耗时会使其他写进程饿死。
3.InnoDB支持外键,MyISAM不支持。
4.InnoDB的主键范围更大,最大是MyISAM的2倍。
5.InnoDB不支持全文索引,而MyISAM支持。全文索引是指对char、varchar和text中的每个词(停用词除外)建立倒排序索引。MyISAM的全文索引其实没啥用,因为它不支持中文分词,必须由使用者分词
后加入空格再写到数据表里,而且少于4个汉字的词会和停用词一样被忽略掉。
6.MyISAM支持GIS数据,InnoDB不支持。即MyISAM支持以下空间数据对象:Point,Line,Polygon,Surface等。
7.没有where的count(*)使用MyISAM要比InnoDB快得多。因为MyISAM内置了一个计数器,count(*)时它直接从计数器中读,而InnoDB必须扫描全表。所以在InnoDB上执行count(*)时一般要伴随where,且
where中要包含主键以外的索引列。为什么这里特别强调"主键以外"?因为InnoDB中primary index是和raw data存放在一起的,而secondary index则是单独存放,然后有个指针指向primary key。
所以只是count(*)的话使用secondary index扫描更快,而primary key则主要在扫描索引同时要返回raw data时的作用较大。
支持
索引
数据
事务
全文
计数器
语句
进程
查询
最大
较大
之间
优先级
会长
作用
使用者
只是
同时
多条
对象
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网加科技
广东万易互联网科技有限公司惠州分公司
伟宏互联网科技
深圳九邦互联网科技有限公司
中国互联网科技股
港股互联网科技股
互联网科技公司名称
华中科技有哪些互联网大佬
小米互联网科技园设置
团飞科技与伯堂互联网服务平台
互联网校园科技培训
崇明区互联网教育科技售后服务
开一家科技互联网公司需要多少钱
互联网科技如何创业
2021互联网科技公司排名
扫呗互联网科技有限公司
互联网界的黑科技
互联网金融运营模式中的金融科技
互联网时代高科技布局
10位科技互联网大佬
科技金融是不是互联网金融
关于新基建和互联网科技
互联网科技排名
壹账通互联网科技
成都狮子座互联网科技
海南科技产业互联网平台
长沙互联网科技
电子商务与互联网科技的关系
互联网科技接地气
科技和互联网行业的特点