Microsoft SQL Server, while a powerful feature rich relational database management system (RDBMS), does have very high licensing costs -- especially if you are using the Enterprise Edition per-processor licensing mode. Using an open source RDBMS like MySQL makes sense when you are doing simple transactions and do not need advanced troubleshooting tools or reporting, notification, OLAP or other components. If you are considering MySQL for your clients' enterprise, be sure you read the MySQL gotchas before deploying MySQL.
MySQL may have a place in the enterprise -- for example, Yahoo uses Oracle as its primary RDBMS but has a large implementation of MySQL for some of its back-end processes.
If you're migrating from SQL Server to MySQL, ensure that MySQL does provide you with the same or acceptable performance and that the solutions you propose will provide the same level of functionality that was delivered by SQL Server. MySQL has different data types. When exporting your data to MySQL from SQL Server, ensure that the data is converted correctly. DTS and SSIS, or your favorite ETL package, can be helpful.
MySQL does not support the same feature set as SQL Server: Security is rudimentary, and MySQL only started supporting stored procedures, subqueries and views in Version 5; however, the stored procedure will likely need to be rewritten in MySQL. Functions are different in MySQL than in SQL Server. Some of the built-in system functions have different names in MySQL than in SQL Server.
This was first published in July 2007