
Thirty years, and it's still a pretty awful RDBMS. I've never forgiven Monty and his colleagues for claiming an RDBMS didn't need referential integrity, saying it could be implemented easily in the application layer. This was a bit of misdirection to make one of the MyISAM table format's worst weaknesses seem unimportant. That lead to a generation of misinformed graduates thinking MySQL was a good choice for any RDBMS purposes and thousands of systems that had terrible data issues, as well as their own convoluted attempts at enforcing referential integrity and some approximation of transactions. Of course, as soon as MySQL adopted the third party InnoDB table format, which did offer referential integrity and some other key features, Monty et al were claiming it was the best thing since sliced bread.
I've replaced MySQL (and more recently MariaDB) with PostgreSQL in systems a number of times. The overall performance and data integrity were greatly improved, as once you start doing anything involving a join MySQL's performance plummets. It's OK performance wise for reads on a single table, but everything else sucks. The query optimiser is still very primitive as well, but it's ultimately limited by the poor implementation of InnoDB itself.
I've also had MySQL do weird things when tables became fairly big. Like silently dropping all the indexes. That was the final straw for me, and I now refuse to work on MySQL/MariaDB based systems unless there is a clear commitment to moving onto a better database in the near future.