MySQL and Microsoft SQL Server are both Relational Database Management Systems (RDBMS) that rival most in the market. Both database management software are freely available and are mainly used as the back end for small or medium-size applications. However, still there are significant differences between these two. In this article I will try to draw a clean line between these two databases.
MySQL
MySQL is a completely open-source DB as contrasted to SQL Server. Still you can make use of the SQL Express Edition, which is the lite weight version of the commercial Web, Standard and Enterprise SQL server versions. The largest arena for MySQL is as the back end database for more than 12 million websites around the world. Many tycoons in the industry, including Yahoo Finance use MySQL as their back end database. I don’t think any other proof is required to confirm its reliability. Another advantage is that since MySQL is open-source, the source code is available under the General Public License, which means anyone can look into the source code and make changes, whereas with SQL Server it is a commercial application.
An unusual advantage that MySQL offers is that you can incorporate different database storage engines with it, depending on your need. For example, you may want a database which will be mainly used for quick access, or accessing heavily portioned tables, or sometimes transactions. Whatever your need, you can choose a database engine like InnoDB, Memory, NDB Cluster or any other database engine that is most suitable to you and incorporate it with MySQL.
Important to note is that you can run MySQL on almost all operating systems, including Windows. Your MySQL database can be moved across operating systems at any time. A widespread opinion is that MySQL performs best on Unix or Linux OS. But still the performance MySQL offers is not as great as SQL Server. It is because of two reasons. One is that, since SQL Server is designed specifically for Windows unlike MySQL, it optimized to work with the OS. Second reason can be attributed to the poor design of the query optimizer in MySQL. However, again, the hope is that, since it is open-source any day, you can expect a release with a much advanced query optimizer. From my experience one thing, the community is proactive; you will not have a single question that you can’t get an answer for when it comes to MySQL.
A major drawback with MySQL is the lack of system stability. A sudden power loss on the server hosting MySQL can result in data corruption. Generally with the right setup, DB Admin procedures and backups, you needn’t have to worry about this, still considering the worst case it is a major drawback.
SQL Server
Now let us look at the pros and cons of SQL Server. Similar to MySQL being free you can use SQL Server Express Edition, which is free of cost but not open source. It is the lite weight version of the commercial SQL Sersions. SQL Server Express is very functional, and you can do almost all regular database operations on it. For most applications on the web and locally SQL Server Express is sufficient.
One noticeable advantage of using SQL Server is its support for complete scalability. However, SQL Express Edition is limited to a datbase size of 4GB, still you can easily integrate the Express Edition with SQL server. The support for scalability allows you to seamlessly upgrade the database as your need grow and migrate to a commercial version of SQL Server. This is particularly useful when you are hosting a website and you are not sure about the size of database you might have in the future. Though MySQL is the most opted back end for websites, in cases like these it is better you opt for SQL server, especially when you’re hosting your website in Windows hosting environment.
Considering the interface, unlike MySQL, which doesn’t have an interface, SQL server offers a well-built set of GUI tools including the SQL Server Management Studio, SQL Configuration Manager and SQL Business Intelligence Development Studio. With this array of feature rich tools that are offered by SQL Server even a relatively new developer can handle a database with ease. This is one area that SQL server scores higher than MySQL.
SQL Server also has a rich family heritage. Coming from the Microsoft family, you can expect features like excellent integration with Windows OS and support for tools like .NET, ODBC and XML. There is a regular stream of support, regular updates and security patches.
The advantage that SQL server is a Microsoft product and works closely with the Windows OS itself turns out to be the major disadvantage too. Since SQL Server can be installed only on Windows OS, many individuals and organizations fear of a lock out. Considering the support for FOSS platforms, it is a major drawback.
The choice depends on your needs. Work through the pros and cons of each of the two databases before you start work on your development and select one that best fits your needs wisely � determine the type of queries you are going to run. It is possible as you progress to migrate from one to the other but it will require refactoring of many queries if you do not stick to the standard SQL Query language.
ARUN Thundyill Saseendran