MS SQL và MySQL đều có những điểm đặc thù của
chúng. Nếu cần so sánh, nên so sánh theo tính năng, hiệu suất, bảo mật
và khả năng phục hồi....
Tôi thấy MySql phiên bản 4.x không thể so với MSSQL vì phiên bản
này thiếu khá nhiều tính năng quan trọng để được xếp loại là một CSDL
hạng nặng (ví dụ như thiếu ứng dụng View, StoreProc, Triggers...). Để
công bằng nên thử so sánh MySql 5.x và MSSQL 2005.
1. Tính năng:
Tôi cho rằng MySql hơn MSSQL ở tính năng cung cấp nhiều loại
storage engine. Tuy nhiên tính về mặt integration chặt chẽ cho trọn bộ
hệ thống và công cụ phát triển software thì MSSQL integrate tốt hơn
MySql, đặc biệt ở mảng .NET. MSSQL còn hỗ trợ XML trực tiếp trong DB,
trong khi đó thì MySQL chưa làm được chuyện này. Các chức năng cần thiết
như View, StoreProcedure, Trigger thì cả hai tương đương nhau.
2. Hiệu suất:
Tính về mặt hiệu suất, có rất nhiều thử nghiệm và tường trình cho
rằng MSSQL perform kém hơn MySQL nhiều mặt. MSSQL đòi hỏi tài nguyên rất
lớn (CPU mạnh, nhiều RAM...), nếu không nó rất ì ạch. MySQL không đòi
hỏi nhiều như MSSQL. MySQL có thể chạy trên các UNIX highend system và
perform tốt hơn MSSQL trên Windows highend server trong nhiều trường
hợp.
3. Bảo mật:
MSSQL qua mặt MySQL về tính bảo mật ở column level. MySQL chỉ có
thể set access đến row level là hết. Hệ thống xác thực người dùng của
MSSQL cũng qua mặt MySQL. Tuy vậy, trên bình diện "để hở cổng" thì MSSQL
dễ bị exploit hơn MySQL bởi MSSQL tích hợp quá chặt vào hệ điều hành.
Lỗi của hệ điều hành hoặc một bộ phận nào đó dẫn đến việc nhân nhượng
MSSQL nhanh chóng hơn MySQL.
4. Khả năng nhân bản (replication):
Cả hai đều có khả năng replicate hoặc cung cấp phương tiện để làm
việc này. Tuy nhiên, MySQL nhanh hơn và ít sự cố hơn MSSQL vì tất cả các
SQL statements dùng để thay đổi, cập nhật dữ liệu được lưu giữ trong
binary log. MSSQL cung cấp nhiều phương pháp replicate cao cấp hơn, chi
tiết hơn bởi thế nó phức tạp hơn và chậm hơn.
5. Khả năng phục hồi (recovery):
Nếu MySQL chạy thuần túy với MyISAM storage engine thì khả năng
phục hồi (sau khi bị crash) không cách gì so sánh với MSSQL. Tuy nhiên
nếu MySQL chạy với Innodb engine thì khả năng phục hồi không thua kém gì
MSSQL. Ngoài ra, khả năng phục hồi còn được xét ở biên độ liên quan đến
khả năng nhân bản (replication) ở trên. Bởi vì MSSQL cung cấp nhiều
phương thức nhân bản nên việc phục hồi dữ liệu trên MSSQL dễ dàng hơn.
6. Phí tổn:
MySQL bản community không hề tốn tiền để mua nhưng bạn phải tự xắn
tay áo lên. Tuy nhiên cài đặt, sử dụng và tối ưu MySQL không khó vì tài
liệu của nó rất đầy đủ, thông tin về MySQL tràn ngập trên web. So với
MSSQL, bạn phải trả gần một ngàn rưỡi đô cho 1 license MSSQL standard và
khi cần support, bạn phải trả thêm tiền support (tùy case). MS vẫn cung
cấp bản MSSQL không thu phí dành cho mục đích development. Tài liệu về
MSSQL cũng rất nhiều trên mạng. Bản MySQL enterprise thì phải trả tiền
(khoảng 400 đô) nhưng bạn được support đầy đủ.
nguồn từ http://www.hvaonline.net