Is MySQL better than PostgreSQL in something?

I know the question sounds provocative, but it really isn't. I'm lately finding MySQL limiting in a lot of areas and liking PostgreSQL more and more. It scales a lot better and it respects the SQL standards a lot more than MySQL.

I'm still new to the PostgreSQL world though and since I'm willing to move away from MySQL for all my future projects, what I want to know is: is there any particular feature of MySQL that it is done better (as in more high-performing or more user friendly, etc..) than in PostgreSQL?

I'm wondering what I'm going to miss from MySQL. I already found that the AUTO_INCREMENT fields in MySQL are more handy than SEQUENCES in PostgreSQL and the deployment in Windows was problematic in the past (not a problem anymore. Never a problem for me).

What else?


You're clearly approaching this from a developer perspective, so you may find more useful answers over at SO.

From an administrative perspective:
- Replication (HA)
- Replication (Scaling*)
- Replication (Backups)
- Application support
- Size and Depth of community (Documentation, Support)
- Existing install base / available jobs

*Note you mentioned postgres scaling better. scaling means something different to everybody, but as a general rule things that have a path to spreading the load across multiple servers scale better than things that don't.


COUNT(*) is also much slower with PSQL. You're supposed to create triggers for this kind of functionality.


Because Postgres effectively does a copy-on-write for every update (so that it can deal with transactions), if you don't need transactions, and do a lot of writes relative to reads, MySQL won't have the overhead that PostgreS will. (every updated record needs to write more, update indexes, etc.)


I can think of one thing missing from PostgreSQL:

  • Collate

I think there was something also with blocking, insert or update. But I can't seem to remember what it actually was. :S