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