MySQL Database for C# Corner
Right now, we use SQL Server 2008 as backend database for C# Corner. What do you guys think about MySQL? Anybody has any whitepapers or case studies that compare both. Facebook, Twitter and all major websites use MySql database so I would assume that performance is not an issue.

Prabhu RajaPosted Oct 20, 2011, 2:51 AM
Hope this Blog will be Useful one :
Why Move to MySQL from Microsoft SQL Server?
Sam HobbsPosted Oct 20, 2011, 2:02 AM
A good database system such as the IBM Information Management System of more than thirty years ago will log all activity to the database and ensure no loss of data in case of failure. I don't know for sure that SQL Server has that ability but I assume it does. I also assume that versions of MySQL that costs money also have a feature such as that so "If a power outage should occur, it could result in the corruption and loss of critical data" would not be relevant to versions of MySQL that is paid for. That would be worthwhile to research.
Javeed M ShaikhPosted Oct 19, 2011, 11:51 PM
I got these points from the searches:
1. SQL Server licenses come with Analysis Services, Integration Services, and Reporting Services. If you want to do anything with OLAP, ETL, or reporting, these three are great applications that are built on the SQL Server stack.
2. SQL Server has native .NET data types. Absolutely brilliant for .NET shops dealing with geospatial datasets.
3. MySQL does not support check constraints.
4. SQL Server includes the over clause, which helps when dealing with the "top n rows in each group" problem. Essentially, you can do aggregate functions partitioned over the dataset any way you'd like.
5. SQL Server uses Kerberos and Windows authentication natively. MySQL does not tie into Active Directory.
6. Superior performance on subqueries (almost any database has subquery performance that is superior to MySQL's)
7. SQL Server and others have a richer set of join algorithms available to them; this means joins can often be performed faster, especially when large tables are involved.
8. CHAR and VARCHAR columns are case-insensitive, already a pretty bad sign.
9. You can INSERT into a table that has a column without a default value that is also NOT NULL. Yes, really! Instead of throwing an error, MySQL will pick a value for you based on the data type, e.g. 0 for numbers.
10. You can use a GROUP BY statement while some columns are neither using an aggregate function, nor included in the GROUP BY statement. The outcome is pretty much random. No warnings or errors here either, in my experience.
11. It's free and open source.
12. In the way of performance, MySQL is the clear leader, mainly due to the format of its default table, MyISAM.
13. A UPS system is mandatory with MyISAM as it assumes uninterrupted operation. If a power outage should occur, it could result in the corruption and loss of critical data. With the SQL Server, data corruption is more unlikely.