Why does the django community encourage the use of Postgres over Mysql?


Django community seems to encourage the use of Postgres, I understand that in a big project you probably don't want to use SQLite or such, but i don't know why they don't like Mysql that much.

just a quick example - Djangobook page 9:

We’re quite fond of PostgreSQL ourselves, for reasons outside the scope of this book, so we mention it first. However, all those engines will work equally well with Django.

Postgres name is always associated with Django - just like Mysql is always associated with php

Best answer might be given to this quiestion is from those who writes the Framework...

But from what you can get from documentation is:

By default, Django starts a transaction when a database connection is first used and commits the result at the end of the request/response handling. The PostgreSQL backends normally operate the same as any other Django backend in this respect.

Django have a strong Transection control, and using a powerful free DBMS that have strong transection control is a plus...

Also, previous versions of Mysql (before mysql 5.0), MySql have some integrity problems. Also MySql's fast storage engine MyISAM do not support foreign keys and transections. So using MyISAM have important minuses that its pluses...

And a wiki for why Postgres is better than Mysql. Its quite old but it is good.