我正在测试innoDB表中的事务支持,而且我试图在MyIsam表上运行相同的事务,并且令人惊讶的是它工作正常。我假设myIsam表中的查询是一个接一个地执行的,而不是在一个原子操作中执行,并且我没有从START TRANSACTION和COMMIT和ROLLBACK操作中得到任何错误。我感兴趣的是MyIsam引擎是忽略这个操作还是执行一些操作?MyIsam引擎事务支持
20
A
回答
26
MyISAM有效地工作在自动提交模式(因为它不是一个事务引擎),它只是忽略提交/回滚。
实际上,存储引擎是MySQL体系结构中的一个不同层,与SQL解析器分开,SQL层使用低级API与存储引擎通信,这就是存在常见SQL和引擎的原因,支持不同特色的子集。你可以看到非常高层次的体系结构here
2
MyIsam tabels不是为此而构建的。即使在5+版本中也没有。它只是为了存储数据。它不能保证交易或数据恢复。您应该为此使用InnoDB,并且如果需要的话,使用MyIsam进行复制(由于没有跨表检查,因此使用MyIsam表检索数据会更快)。
您可以从MySQL http://forums.mysql.com/read.php?21,68686,69229#msg-69229
相关问题
- 1. Innodb引擎和Myisam引擎
- 2. Hibernate JPA是否支持mysql InnoDB和MyISAM引擎
- 3. 为什么MySQL的MyISAM引擎不支持外键?
- 4. Rails支持宝石/引擎
- 5. 不支持MySQL簇引擎
- 6. .net Google App引擎支持
- 7. 哪个引擎? InnoDb或MyISAM?
- 8. Neo4jclient事务支持
- 9. 将引擎类型更改为MyISAM未知引擎
- 10. 对应用引擎1.6.4的GPE支持?
- 11. 哪个DB/DB引擎支持搜索?
- 12. 支持动态查询的NoSQL引擎?
- 13. 表达式引擎:OpenID支持?
- 14. 支持主题的asp.net博客引擎?
- 15. Google应用引擎是否支持JDBC?
- 16. 泡沫:Google应用引擎支持
- 17. HtmlUnit的应用引擎支持
- 18. Google App引擎是否支持Rails 3.1?
- 19. 支持SQLite的简单论坛引擎
- 20. JBoss AS 7支持哪些XQuery引擎?
- 21. Rails引擎是否支持i18n
- 22. Openfire - MySQL存储引擎:InnoDB或MyISAM?
- 23. Silverstripe FulltextSearchable转换表引擎在MyISAM
- 24. MyISAM引擎上的MySQL回滚
- 25. mysql MyISAM与NDB存储引擎重读
- 26. Datastax - 不支持事务
- 27. struts2中的事务支持
- 28. activemq事务性支持
- 29. HibernateTransactionManager事务挂起支持
- 30. 弹簧3事务支持
阅读这篇文章“工作”意味着你能回滚DML语句,或者你没有得到语法错误? –
我做了一个简单的选择和插入语句,并没有收到任何错误。 – Headshota
好吧,然后看@ Darhazer的答案。您可能不会遇到任何错误,但您实际上不会有交易。发出ROLLBACK时,你的INSERT不会被撤销。 –