These "facts" could be erroneous though so feel free to correct me if you have some definitive knowledge.
1) MyISAM
* The default setup on most MySQL installations.
* Tables will sooner or later get corrupted but relatively easy to repair.
* Adequate for high read volume, low write volume websites.
2) InnoDB
* Recommended for "transaction" databases (a question on this later) because of greater data integrity support.
* Better performance all round (usually).
* Tables will take more disk space, so could be an issue for some people.
* More reliable BUT when things go wrong, tables can be MUCH more difficult to repair.
The first question is what exactly defines a "transaction" database. Obviously something like a banking system
that involves monetary transfers requires a high degree of confidence that the transaction has been processed correctly
and in its entirety. But on the other hand, for something like a room reservation system where there is no money directly
changing hands, how critical is it? As I understand it, the key feature of "transaction support" storage engines like InnoDB is that
they will take a set of instructions and process them entirely OR not at all, which is much safer in a case of something going wrong with your script or server.
And secondly, how many of you are successfully running InnoDB storage engines on shared servers?
There is article that suggests its a bad idea without going into detail about why.
http://www.softwareprojects.com/resources/...nnodb-1634.html
Finally, is it safe to have different tables set up based on different storage engines within the same website?
All of this assumes access to MySQL is through phpMyAdmin rather that the MySQL command line interface.
This post has been edited by Beavis: 10 December 2008 - 05:13 AM


Help
This topic is locked
MultiQuote








