MySQL is a PostRelationalDataBase management system. It is the canonical example of a successful commercial OpenSource product. This has been attributed primarily to the fact that it's DualLicensed.
Some also say it is devil spawn or a horrible piece of badly written software. It's very fast at low loads because it's hardly more than a glorified flat file database with an SQL interface, but that comes at the expense of any feature anyone would find useful (transactions, as one example). It sucks at large joins and has trouble handling tables with a few million rows in them.
If you want a relational DataBase, use PostgreSQL. You'll love yourself forever if you do.
See also PostgreSQL, PostgresVsMysql, DB2, Oracle
For a large portion of the new markets being created by MySQL, this advantage [easy to install while reasonably useful, Ed.] matters a lot more than missing features and poor ACID semantics. If this shocks you, then remember that MySQL is used for the InterNet-enabled version of what people used to use MicrosoftAccess for. Compare MySQL to Access on technical grounds -- who wins?
-- Ben Tilly in 20040629182643.8C4E33AA2A1@ws5-8.us4.outblaze.com
Loud jarring chord!
The door flies open and BillGates of Microsoft enters, flanked by two junior cardinals. Steve Ballmer has goggles pushed over his forehead. Sam Palmisano (IBM) is just an idiot.
GATES: Nobody expects the InfoWorld Article! The chief thing missing from MySQL is subselects...subselects and views...views and subselects.... The two things missing are views and subselects...and triggers.... The three things missing are views, subselects and triggers...and an almost fanatical devotion to row-level transactions.... The four... no... Amongst the things missing from MySQL ...are such elements as views, subselects.... I'll come in again.
Exit and exeunt
22 pages link to MySQL: