Marketing.
MySQL has a good marketing scheme going on, they make sure that web-developers know about MySQL and how 'fast' it is and how easy it is to install.
Obviously they will not tell you that MySQL only supports maybe 40% of the SQL standard, and anybody who ever installed PostgreSQL will tell you that it's just a simple as installing MySQL.
And nobody ever speaks of scalability, functionality or reliability (nobody other than MySQL itself that is).
For ex: Did you ever hear anybody praise MySQL for it's capabilities to keep data consistent? Or it's ability to self-repair after a server-failure? Or it's clever stored procedures? views? user definable datatypes? functional indexing? Or it's ability to handle high mixed loads? Or it's transaction support (they require outside help from InnoDB to be able to do that)
The 'sad' truth is that 99.9% of all the good words you hear about MySQL come from MySQL itself and from the vast array of (no offence) people who don't know any better.
Many people who want to begin with databases will choose MySQL because MySQL's marketing makes sure that they know about MySQL.
And that's not a bad choice, MySQL let's you learn the basics of databases and SQL.
But SQL can do so much more than just insert and select.
There was a question here recently about how to get al relations to a certain record to make sure that all related data is deleted when the 'parent' record is removed.
MySQL users (have to) spend days if not weeks coding failsafe routines for this into their scripts, blissfully unaware that nearly every other database supports foreign keys with cascading deletes, which takes care of that for you (just delete the parent and the database removes the rest)
The same goes for transactions. People who don't know about transactions spend a frightning amount of time trying to work around them, thinking up the most intricate solutions, while PostgreSQL, sybase, Oracle, Informix, they all support transactions.
It seems that people who use MySQL think that every other database is a hugely complex, slow monster that requires an Einstein IQ to setup and maintain.
Ofcourse MySQL's marketing strategy of 'MySQL is simple, simpler simplest' does not help to change that.
MySQL would be a very good database if they only bothered to add some functionality instead of always trying to be the fastest database on the planet. Serious applications don't just require speed, they require functionality.