EnterpriseDB put out a white paper arguing for the superiority of PostgreSQL over MySQL, even without EnterpriseDB’s own Postgres Plus extensions. Highlights of EnterpriseDB’s opinion include:
- EnterpriseDB asserts that MyISAM is the only MySQL storage engine with decent performance.
- EnterpriseDB then bashes MyISAM for all sorts of well-deserved reasons, especially ACID-noncompliance.
- EnterpriseDB asserts that row-level triggers, lacking in MySQL but present in PostgreSQL, are the most important kind of trigger.
- EnterpriseDB claims PostgreSQL is superior in procedural language support to MySQL.
- EnterpriseDB claims PostgreSQL is superior in authentication support to MySQL.
Of course, the question of MySQL performance with a transactional storage engine — i.e., InnoDB — is somewhat controversial. E.g., there are many confident guides to InnoDB tuning. (Another post I found was this one, focused on Drupal. ) The bottom line seems to be that MySQL can be both transactional and decently-performing, but the price is sacrificing some of the load-and-go ease one gets from a default configuration. And apps written for MySQL/MyISAM will not necessarily perform well over MySQL/InnoDB.