Also the MySQL query cache is not very granular, it gets cleared on every write to that table. Thus, we've seen in practice that with it enabled MySQL has poorer performance as its constantly being flushed. The overhead of maintaining it doesnt pay off.
Of course its a trade-off. If you have have substantially more reads than writes than it might be OK for your needs.
Mutex issues and other problems with high insert / update rates. Google "mysql query cache issues" and "mysql query cache disable" for lots of posts about the various costs / benefits.
Of course its a trade-off. If you have have substantially more reads than writes than it might be OK for your needs.