MySQLInnoDBDialect和MySQLMyISAMDialect的差别
来源:互联网 发布:知柏地黄丸不良反应 编辑:程序博客网 时间:2024/05/17 22:51
·二进制层次的可移植性。
·NULL列索引。
·对变长行比ISAM表有更少的碎片。
·支持大文件。
·更好的索引压缩。
·更好的键码统计分布。
·更好和更快的auto_increment处理。
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 “�a%”。
任何一种表都不是万能的,只用恰当的针对业务类型来选择合适的表类型,才能最大的发挥MySQL的性能优势。
- MySQLInnoDBDialect和MySQLMyISAMDialect的差别
- MySQLInnoDBDialect和MySQLMyISAMDialect的差别
- org.hibernate.dialect.MySQLInnoDBDialect与org.hibernate.dialect.MySQLMyISAMDialect
- SAN和NAS的差别
- 穷人和富人的差别
- 穷人和富人的差别
- PostMessage()和SendMessage()的差别
- InnoDB和MyISAM的差别
- range和xrang 的差别
- TMS320F2812和TMS320F28335的差别
- fgets() 和 gets() 的差别
- policy和trait的差别
- 进程和线程的差别
- postMessage和sendMessage的差别
- 工作组 和 域 的差别
- 产品和项目的差别
- bounds和frame的差别
- Create 和refresh的差别
- 常用Linux命令
- Android 第二天重置版 技巧
- SSH进阶——Struts入门
- 深入理解Java的接口和抽象类
- Redis集群管理之Redis Cluster集群节点增减
- MySQLInnoDBDialect和MySQLMyISAMDialect的差别
- LeetCode 319 Bulb Switcher(灯泡切换)(从规律中发现算法……)
- 解决“无法完成操作,因为文件包含病毒或潜在的垃圾软件”
- Java中的匿名内部类总结
- poj--1274--The Perfect Stall(匈牙利裸题)
- 工作生活感悟
- 隐藏输入法
- Ubuntu设置ssh免密码登陆
- 安卓通知的使用系列6:对话框通知的使用之自定义对话框