Mysql Engine【innodb,myisam】
2019独角兽企业重金招聘Python工程师标准>>>
Innodb,Myisam都是Mysql数据库存储的引擎,Innodb支持事务等数据库高级特性,Myisam不支持,但比较快速。
ISAM 是一个定义明确且历经时间考验的数据表格管理方法,它在设计时就考虑到数据库被查询的次数要远远高于更新的次数。因此,ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源。ISAM的两个主要不足之处在于,它不支持事务处理,也不能够容错;如果你的硬盘崩溃了,那么数据文件就无法恢复了。如果你正在把ISAM用在关键任务应用程序里,那就必须经常备份你所有的实时数据,通过其复制特性,MySQL能够支持这样的复制备份应用程序
InnoDB 它提供了事务控制能力功能,它确保一组命令全部执行成功。或者当任何一条命令出现错误时所有命令的结果都被回退,可以想象在电子银行中事务控制能力是非常重要的。支持COMMIT,ROLLBACK和其他事务特性。最新版本的MySQL已经计划移除对DBD的支持,权利发展InnoDB
MyISAM是ISAM表的新版本,进行了如下扩展:
二进制层次的可移植性,NULL列索引,对变长行比ISAM表有更少的碎片。支持大文件,更好的索引压缩,更好的键吗统计分布,更好和更快的Auto_increment处理
区别如下:
InnoDB不支持FULLTEXT类型的索引。
InnoDB不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是Myisam只要简单的读出保存好的行数即可。需要注意的是,如果select语句后面包含了where条件,则两种表的操作是一样的。
对于auto_increment类型的字段,InnoDB中必须包含只有该字段的索引,但是在Myisam中,可以和其他字段一起建立联合索引。
DELETE from table时,InnoDB不会重新建立表。
LOAD TABLE FROM MASTER 操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成Myisam表,到入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性的表来说不适用,另外InnoDB的行锁也不是绝对的,如果在执行了一个SQL语句时MySQL不能确定要扫描的范围,InnoDB同样会锁全表
MySQL aminstractor建数据库的时候,表缺省是InnoDB类型
InnoDB,Myisam两种类型:Myisam不支持事务处理高级特性,而InnoDB支持;Myisam类型的表强调的是性能,其执行速度比InnoDB类型的更快
Myisam类型的二进制数据文件可以在不同的操作系统中迁移,也就是可以直接从windows系统拷贝到linux系统中使用
修改表的引擎类型:ALTER TABLE tablename ENGINE = MYISAM;
转载于:https://my.oschina.net/u/2611678/blog/640119
Mysql Engine【innodb,myisam】相关推荐
- mysql数据库建设网站,网站设计与建设-MySQL数据库【松柏书屋】
<网站设计与建设-MySQL数据库[松柏书屋]>由会员分享,可在线阅读,更多相关<网站设计与建设-MySQL数据库[松柏书屋](64页珍藏版)>请在人人文库网上搜索. 1.第2 ...
- 03-JDBC连接MySQL数据库【插入数据】
JDBC连接mysql–学习目录: 地址:http://blog.csdn.net/baidu_37107022/article/details/72600018 1.实现插入步骤 前三个步骤:注册. ...
- Mysql 使用【information_schema.COLUMNS】批量修改表字段注释
接手一个新项目,已经初步开发并上线了.因开发人员不按规范开发,数据库表中的字段注释基本没有,线上追加注释不方便,最后解决是在测试端生成相应的修改字段的Sql语句来同步线上的字段保证线上.线下数据库表. ...
- MYSQL 命令【精华帖】
一.连接MYSQL 格式: mysql -h主机地址 -u用户名 -p用户密码 或者: mysql -u 用户名 -p // 回车后要求输入密码,密码不可见 1.连接到本机上的MYSQL. 首先打开D ...
- 05-JDBC连接MySQL数据库【删除数据】
JDBC自学教程–终篇总结: 地址:http://blog.csdn.net/baidu_37107022/article/details/72600018 1.实现修改步骤 前三个步骤:注册.获得连 ...
- 04-JDBC连接MySQL数据库【修改数据】
JDBC连接mysql–学习目录: 地址:http://blog.csdn.net/baidu_37107022/article/details/72600018 1.实现修改步骤 前三个步骤:注册. ...
- 02-JDBC连接MySQL数据库【查询数据】
JDBC自学教程–终篇总结: 地址:http://blog.csdn.net/baidu_37107022/article/details/72600018 1.实现查询步骤 1)实现注册的两种方式 ...
- asp.net链接mysql数据库------------【个人收集】
在web.config文件中添加如下样式的数据库链接字符串: <add name="dbconnection" connectionString="DataBase ...
- mysql sqlsugar_【开源框架】SqlSugarRepository 全库ORM 正式发布
SqlSugarRepository.dll 全库开发框架支持 四种数据库:SqlServer. MySql .Oracle和Sqlite. SqlSugarRepository是为全库开发而生的OR ...
最新文章
- 计算机语言编程能力有哪些,除了编程语言,程序员还需要具备哪些能力
- puppeteer爬虫的奇妙之旅
- ubuntu12.04+fuerte 下跑通lsd-slam——数据集
- 10个超级有用、必须收藏的PHP代码样例
- php中的替换函数,php字符串中替换函数是什么
- vim编辑环境设定[Linux]
- select_arg_from_python相关的测试程序
- 混沌工程详细介绍——Netflix持续交付实践探寻
- MYSQL添加约束的两种方法
- Java远程连接进程
- VS MFC checkbox 控件默认选中
- 数据中心建筑设计及功能区布局的注意事项
- 用的iapp教程手册,iapp模块的使用教程
- 关于IE上embed自动播放
- 托利多bcom电子秤常用设置
- 有参构造方法的作用和无参构造方法的作用
- 魔法少女小圆计算机音乐,求魔法少女小圆一些背景音乐的名字
- MyBatis一发入魂之插入操作
- 银河麒麟用QIFW制作安装包
- 带你认识 flask 国际化和本地化
热门文章
- 面试官问:能否模拟实现JS的call和apply方法
- 学习笔记 - MarkDown 语法
- “互联网+”促传统企业三大转型
- Testing - 软件测试知识梳理 - 自动化测试
- 解析邮件归档技术 保护企业邮件安全(三)
- c#将http调用返回额json中的有关中文的unicode转换为中文
- windows server 2008更新补丁失败排错
- Mysql不同存储引擎的表转换方法
- 电子商务时代企业统计的发展方向
- [导入]ASP.NET MVC的WebSite模式(with mvc membership)