MySQL is an inexpensive, lightweight and fast RDBMS. It supports C, Perl, Java (via the Java Database Connectivity API [JDBC]) and Python programming.
With the tools MySQL provides these languages, it is possible to create full-blown client/server applications and database-integrated Web sites without spending a fortune.
This is great news for the small Web publisher or those who develop small-scale client/server applications and who cannot afford to purchase one of the expensive, commercially available products.
The inexpensive—in many cases free—nature of MySQL does not come cost free, however. The RDBMS does not support the full range of SQL. This engine lacks some features that may be required by more complex applications.
For some applications, for instance, the programmer may have to work a little harder on the client side to meet needs that she gets for free from expensive database engines.
In general, however, the MySQL database engine is perfect for mid-range database needs.