MySQL does the job pretty well for applications in which stored procedures and other advanced features are not needed. It is really fast and very effective at doing what is absolutely needed: INSERTS, UPDATES, and SELECTS. I don't think it is "awful" or ready to die.
Quality rarely drives market share in software. In this case I blame nearly all of the 5.2 million PHP and MySQL tutorials out there for exemplifying shoddy practices that inevitably lead to quietly truncated fields, phantom reads, and SQL injection attacks.