mysql 中InnoDB和MyISAM的区别分析小结


Posted in PHP onApril 15, 2008

 MyIASM是IASM表的新版本,有如下扩展:
二进制层次的可移植性。
NULL列索引。
对变长行比ISAM表有更少的碎片。
支持大文件。
更好的索引压缩。
更好的键吗统计分布。
更好和更快的auto_increment处理。

以下是一些细节和具体实现的差别:

1.InnoDB不支持FULLTEXT类型的索引。
2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含 where条件时,两种表的操作是一样的。
3.对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。
4.DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。
5.LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用。

另外,InnoDB表的行锁也不是绝对的,如果在执行一个SQL语句时MySQL不能确定要扫描的范围,InnoDB表同样会锁全表,例如update table set num=1 where name like “%aaa%”

任何一种表都不是万能的,只用恰当的针对业务类型来选择合适的表类型,才能最大的发挥MySQL的性能优势。

PHP 相关文章推荐
php获取网页内容方法总结
Dec 04 PHP
PHP 高级课程笔记 面向对象
Jun 21 PHP
php单态设计模式(单例模式)实例
Nov 18 PHP
php实现监控varnish缓存服务器的状态
Dec 30 PHP
YII Framework框架教程之日志用法详解
Mar 14 PHP
PHP使用preg_split和explode分割textarea存放内容的方法分析
Jul 03 PHP
PHP 中TP5 Request 请求对象的实例详解
Jul 31 PHP
PHP/ThinkPHP实现批量打包下载文件的方法示例
Jul 31 PHP
php数组遍历类与用法示例
May 24 PHP
laravel框架添加数据,显示数据,返回成功值的方法
Oct 11 PHP
laravel 获取当前url的别名方法
Oct 11 PHP
PHP正则表达式函数preg_replace用法实例分析
Jun 04 PHP
snoopy PHP版的网络客户端提供本地下载
Apr 15 #PHP
php zend解密软件绿色版测试可用
Apr 14 #PHP
修改Zend引擎实现PHP源码加密的原理及实践
Apr 14 #PHP
php5 mysql分页实例代码
Apr 10 #PHP
Smarty安装配置方法
Apr 10 #PHP
PHP程序员编程注意事项
Apr 10 #PHP
php下使用以下代码连接并测试
Apr 09 #PHP
You might like
PHP文件操作之获取目录下文件与计算相对路径的方法
2016/01/08 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
2019/01/28 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
javascript正则表达式中参数g(全局)的作用
2010/11/11 Javascript
js获取本机的外网/广域网ip地址完整源码
2013/08/12 Javascript
给ListBox添加双击事件示例代码
2013/12/02 Javascript
jQuery中innerWidth()方法用法实例
2015/01/19 Javascript
jQuery与js实现颜色渐变的方法
2016/12/30 Javascript
原生javascript实现读写CSS样式的方法详解
2017/02/20 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
Vue axios全局拦截 get请求、post请求、配置请求的实例代码
2018/11/28 Javascript
微信小程序实现锚点功能
2019/11/20 Javascript
微信小程序如何获取地址
2019/12/24 Javascript
Vue-cli3多页面配置详解
2020/03/22 Javascript
在Vue中获取自定义属性方法:data-id的实例
2020/09/09 Javascript
Vue Element校验validate的实例
2020/09/21 Javascript
[05:04]DOTA2上海特级锦标赛主赛事第二日TOP10
2016/03/04 DOTA
python使用正则表达式提取网页URL的方法
2015/05/26 Python
python 实现一个贴吧图片爬虫的示例
2017/10/12 Python
pandas实现选取特定索引的行
2018/04/20 Python
python处理两种分隔符的数据集方法
2018/12/12 Python
python 实现倒排索引的方法
2018/12/25 Python
Pandas删除数据的几种情况(小结)
2019/06/21 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
2020/03/18 Python
Python文件操作基础流程解析
2020/03/19 Python
Python Matplotlib简易教程(小白教程)
2020/07/28 Python
中国茶叶、茶具一站式网上购物商城:醉品茶城
2018/07/03 全球购物
应聘收银员个人的求职信
2013/11/30 职场文书
送货司机岗位职责
2013/12/11 职场文书
暑期社会实践方案
2014/02/05 职场文书
婚纱摄影师求职信
2014/03/07 职场文书
市政管理求职信范文
2014/05/07 职场文书
html+css实现赛博朋克风格按钮
2021/05/26 HTML / CSS
Pyhton爬虫知识之正则表达式详解
2022/04/01 Python
Python使用华为API为图像设置多个锚点标签
2022/04/12 Python
pytest实现多进程与多线程运行超好用的插件
2022/07/15 Python