mysql中innodb和MyISAM引擎差距在哪里,分别适合在什么场景使用

学习中的猿 2018-08-20 04:18:58
我了解Innodb支持事物级别MyISAM的全文检索这些他们的区别,不过那在什么场景下会使用MyISAM引擎
...全文
1107 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bhqt0910 2018-09-19
  • 打赏
  • 举报
回复
MyISAM 对事务一致性要求不高,主要用来执行查询操作,比如日志类的
ACMAIN_CHM 2018-09-01
  • 打赏
  • 举报
回复
引用
一个数据库可以包含不同类型的表。

事务安全表(TST) 比起非事务安全表 (NTST)有几大优势:


· 更安全。即使MySQL崩溃或遇到硬件问题,要么自动恢复,要么从备份加事务日志恢复,你可以取回数据。

· 你可以合并许多语句,并用COMMIT语句同时接受它们全部(如果autocommit被禁止掉)。

· 你可以执行ROLLBACK来忽略你的改变(如果autocommit被禁止掉)。

· 如果更新失败,你的所有改变都变回原来。(用非事务安全表,所有发生的改变都是永久的)。

· 事务安全存储引擎可以给那些当前用读得到许多更新的表提供更好的部署。

虽然MySQL支持数个事务安全存储引擎,为获得最好结果,你不应该在一个事务那混合不同表类型。如果你混合表类型会发生问题,更多信息请参阅13.4.1节,“START TRANSACTION, COMMIT和ROLLBACK Syntax”。

如果你没有指定配置值的话,InnoDB使用默认的配置值。请参阅15.2.3节,“InnoDB配置”。

非事务安全表自身有几个优点,因为没有事务开支,所有优点都能出现:


· 更快

· 需要更少的磁盘空间

· 执行更新需要更少的内存

你可以在同一个语句中合并事务安全和非事务安全表来获得两者最好的情况
.
tututu123 2018-08-24
  • 打赏
  • 举报
回复
比如说一个主从库,主库的表可以用innodb为了效率和数据安全,从库一部分表可以用MyISAM 专门用来做报表查询。
oyljerry 2018-08-21
  • 打赏
  • 举报
回复
不要求事务,追求更快速度。
MW_long 2018-08-21
  • 打赏
  • 举报
回复
百度呀! 业务存储一般用 innodb, MyISAM 这个引擎 你可以然日期分区, 用来做日志记录
  • 打赏
  • 举报
回复
现在基本都是innodb,除非特殊要求

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧