Python / Apache / MySQL

Paul Boddie paul at boddie.org.uk
Tue Feb 14 13:51:02 EST 2006


Sybren Stuvel wrote:
> Dennis Lee Bieber enlightened us with:
> > I believe that since 4.1, the "default table format" is InnoDB, and
> > that DOES have some support foreign keys and transactions.
>
> Finally they are starting to make more sense. I'd still rather use a
> database that has had those features for a longer time, though.

My experience with MySQL on the abomination that is Fedora Core (so I
imagine it was 4.x as opposed to 5.x), was that the default table type
appeared to be the ridiculously incapable MyISAM, and that by choosing
InnoDB you got transactions along with a bunch of limitations and a
serving of odd behaviour, where "odd" means "would raise a laugh
amongst users of other database systems".

I think you only really need to compare the manuals for MySQL [1] and
PostgreSQL [2] to see that PostgreSQL offers straightforward but
seemingly well-tested functionality for populating databases and then
having them just work properly, whereas MySQL offloads an array of
"features" and a mangled SQL syntax onto the developer/administrator in
a way that would suggest, if one were to be uncharitable in this
matter, that the developers of MySQL aren't confident that everything
works and would rather "empower" users to make their own choices and
then to apologise for themselves when something they thought might work
(and probably would on some other system) actually doesn't.

Anyway, various comparisons have been made, and here are a few
good/recent ones:

http://www.wlug.org.nz/PostgresVsMysql
http://sql-info.de/mysql/gotchas.html
http://sql-info.de/postgresql/postgres-gotchas.html

And here's one with a Pythonic slant:

http://bob.pythonmac.org/archives/2005/08/12/mysql-hate/

Paul

[1] http://dev.mysql.com/doc/refman/5.0/en/
[2] http://www.postgresql.org/docs/7.4/static/




More information about the Python-list mailing list