While Sun Microsystem's MySQL open source database isn't a direct competitor to the proprietary database offerings of Oracle, IBM and Microsoft, it has carved out a profitable niche among many corporate enterprises. But picking a free open source database is not simple.
Read the other sections of this guide on SQL databases:
Breaking down the contenders in the SQL database market
Diving deeper into the SQL database features
The MySQL open source database in the enterprise
Open source databases, such as MySQL, have become an attractive option for many enterprises, thanks to one simple fact: They are free. Free, as in no purchase cost, free as in no complex licensing requirements, and free as in the ability to scale large. Picking a free database, however, is just not that simple. The MySQL open source database is fundamentally similar to commercial databases, such as Oracle 11g, IBM's DB2 and Microsoft's SQL Server in that all are data storage and retrieval systems. They all use SQL to retrieve data, and they all support ANSI-SQL. Each of the Big Three's database systems supports primary keys and key indices, and allows you to create indices to speed up queries, as well as allowing you to constrain input. What's more, all three provide some form of XML support.
With all the basics being similar, it comes down to the hidden differences that determine whether or not
MySQL is a viable alternative to commercial databases. One of the first things to consider is total cost. While MySQL may cost nothing, it is not actually free.
Administrators need to consider the costs associated with training and support for MySQL, both of which must come from third parties. What's more, administrators will have to build continuity plans and database recovery plans without the benefit of vendor-provided documentation, support or consultation. On top of that, there are other issues having to do with upgrade planning and paths.
As an open source product, MySQL takes a community approach to enhancements and modifications, where there is no one vendor calling the shots. This could lead to unsupported changes in the product that might serve to confound administrators, if only because documentation and training may not accompany the changes.
While many of these points may prove to be negatives for enterprises, they should not be showstoppers. Larger enterprises with personnel dedicated to supporting the product can solve most of the support problems surrounding open source products without any outside help. That still leaves other concerns when selecting an open source database such as MySQL, including security, scalability, compatibility and performance.
When it comes to deciding between MySQL and a commercial database, the choice should be dictated by application first. For example, if you are looking to create a .NET services architecture or synchronize data between disparate platforms, or you are looking for integrated database management, a commercial database may be a better fit. On the other hand, if you are building a third-party-hosted website or delivering data out to a multitude of clients and have a limited budget, an open source database such as MySQL may be your best bet.
This was first published in November 2009