There's one thing you didn't mention that annoys me with MySQL: it ignores CHECK constraints. It parses CHECK constraints, but it ignores them (on all backends, according to the manual for 6.0).

And it's this kind of stuff that truly annoys me the most with MySQL: It will look like something worked like you'd expect, but in fact MySQL has silently ignored something, or done something else. There used to be a page on this, but it seems to be gone at the moment (Google has a cached copy here).