I work at BIGCO. Everything you say is partly true, but:
I've developed apps on Oracle and MySQL. Cost is not a factor; we get Oracle for free here. And yet I always choose MySQL for new projects. And that is the overwhelming majority preference, among experienced engineers who disagree on lots of other things. Why?
- Performance. Even with good DBAs investing a lot of time, Oracle cannot deliver. Remember, we tune our schema and MySQL instance until it's faster than many custom-written datastores. (Obviously, I'm talking about MyISAM). MySQL is so fat-free that it's hard to beat in custom C. And yes, MySQL's performance falls off rapidly with complex queries. Query optimization does consume significant engineering time.
- Hassle factor. Just as you feel MySQL has imposed too much weirdness on you, I feel that Oracle has wasted too many of my hours. Everything about this db is clumsy, old-fashioned and obscure.
- Transaction-phobia. We're not doing banking apps here. I remember Oracle instances getting slow because open sessions are piling up, either from humans, broken pooling, or scripts. One more headache I'm thankfully free from.
There's no free lunch here. Oracle provides a more seamless abstraction, including ACID, at the price of performance. That is an appropriate tradeoff for some apps.