MySQL ile SQL Server Arasındaki Fark

Dış ticaret, girişimcilik, pazarlama, e-ticaret, yerel ticaret ve genel ticaret üzerine kurulumuş web platform.

Manos

Member
13 Ağu 2019
78
0
6
Meslek
Şovalye
MySQL vs SQL Server
MySQL Nedir?
90’lı yılların ortasında geliştirilen (daha sonra Oracle tarafından alınan) MySQL, bugünde geçerli olmak üzere ilk açık kaynak veritabanlarından birisidir. Bunun anlamı, MySQL’in bazı alternatifleri bulunuyor ancak bu çeşitler arasındaki farklılıklar çok büyük değil; dizin ve temel işlevleri birebir aynı.
Yeni işletmeler topluluğundaki popülerliği MySQL’in bir karakteristiği haline gelmiştir. Açık kaynak ve ücretsiz oldıuğundan, geliştiriciler hızlı şekilde MySQL kullanmaya başlayabiliyor ve nadiren ihtiyaçları olsa da kodunu düzenleyebiliyor. MySQL genel olarak bir Linux dağıtımı üzerinde Apache Web Sunucusu veya PHP ile birlikte kullanılıyor, LAMP (Linux, Apache, MySQL, PHP) söylemi bu sayede doğmuştur.
SQL Server Nedir?
Microsoft SQL Server olarak da bilinen, SQL Server, MySQL’den çok daha uzun bir süredir var. Microsoft, SQL Server’ı, güvenilir ve ölçeklendirilebilir RDBMS sözüyle 80’lerde geliştirdi. Aradan yıllar geçmesine rağmen, büyük ölçekli firmalar için ilk başvurulan platform olması sebebiyle, bu sözler SQL Server’ın çekirdek özellikleri olmaya devam ediyor.
SQL Server başlıca, MySQL için PHP’ye karşı .NET’i geliştirme dili olarak kullanan geliştiriciler için düşünülmüştür. Mantıklıdır çünkü ikiside Microsoft’un şemsiyesi altındadır.
MySQL ve SQL Server Arasındaki Kilit Farklılıklar
Şimdi bu sistemlerin ne olduğuna yönelik bir fikrimiz olduğuna göre, MySQL ile SQL Server arasındaki bazı farklılıklara göz atalım:
  • Ortam
Belirttiğimiz üzere, SQL Server en iyi .NET ile çalışmaktadır. Diğer yandan MySQL ise hemen hemen diğer tüm dillerle çalışabilir ancak başlıca PHP ile kullanılır. Şunu da belirtmekte fayda var, SQL Server önceden sadece Windows’da çalışıyordu fakat geçen yıl Microsoft SQL Server için Linux desteğini açıkladı. Yine de, Linux sürümü hala olgunlaşmış değil ve bu sebeple tavsiyemiz SQL Server kullanacaksanız Windows, MySQL tercih edecekseniz Linux’e geçiş yapmanız yönündedir.
  • Syntax
Çoğu kişi için bu iki sistem arasındaki en önemli farklılık. Dizin kurallarından birisine alışmış olmak sizin için en iyi sistemin hangisi olduğu kararını belirlemenizde önemli bir rol oynar. Hem MySQL hem de SQL Server SQL bazlı olsa da syntax farklılıkları es geçilmeyecek kadar değişiklik gösteriyor. Aşağıdaki örneğe göz atalım:
MySQL
SELECT age
FROM person
ORDER BY age ASC
LIMIT 1 OFFSET 2
Microsoft SQL Server
SELECT TOP 3 WITH TIES *
FROM person
ORDER BY age ASC
İki kod parçası da aynı sonucu elde ediyor – person adlı tablodan en genç ilk 3 girdiyi getiriyor. Ancak syntax’de devasa bir değişiklik bulunuyor. Tabi ki, syntax sübjektifdir, bu nedenle herhangi birini tavsiye edemiyoruz; hangisi sizin için uygunsa onu seçin. MySQL ve SQL Server arasındaki yürütsel değişikliklerin tam listesi için bu bağlantıyı ziyaret edebilirsiniz.
  • SQL Server bir RDBMS’den daha fazlasıdır
Sahipli yazılımların, açık kaynak yazılımlara karşı başlıca avantajı özel destek alıyor olmalarıdır. Bizim durumumuzda, avantaj daha da güçlüdür çünkü SQL Server’ın arkasında dünyadaki en büyük teknoloji şirketlerinden birisi bulunuyor. Microsoft SQL Server için veri analiz araçları dahil RDBMS’ler ile birlikte gelen çeşitli araçlar üretti. Aynı zamanda SQL Server Reporting Services adında bir rapor sunucusuyla birlikte bir de ETL aracı bulunuyor. Bu da dolayısıyla SQL Server’ı RDBMS’lerin İsviçre çakısı haline getiriyor. Benzer özellikleri MySQL’de de edinebilmeniz mümkün ancak üçüncü parti çözümler için tüm interneti taramanız gerekiyor ve bu da çoğu kişi için ideal değil.
  • Depolama motorları
MySQL ile SQL Server arasında bazen gözardı edilen bir diğer büyük fark ise veri depolama yöntemleridir. SQL Server, MySQL’in sunduğu çoklu depolama motorlarına karşın, Microsoft tarafından geliştirilen tekli depolama motoru kullanıyor. Bu da hız, güvenilirlik veya başka bir sebepten dolayı farklı tablolar için farklı motorlar kullanabildiklerinden dolayı geliştiricilere çok daha büyük esneklik sağlıyor. Her ne kadar biraz yavaş kalsa da, güvenilirliğinden dolayı popüler olan MySQL depolama motorlarından birisi InnoDB’dir. Bir diğeri ise MyISAM.
  • Sorgu İptali
Pek çok kişi bunu bilmez ancak MySQL ile SQL Server arasındaki ciddi bir diğer fark ise MySQL’in sorgu uygulaması esnasında iptal şansı vermemesidir. Bunun anlamı, bir komut uygulanmaya başlandığında geri alamayacağınız kadar büyük bir hasara sebep olmamasını ummaktan başka şansınız bulunmuyor. Diğer yandan SQL Server, uygulama esnasında iptal seçeneği sunuyor. Bu fark, nadiren uygulama esnasında iptal gerektiren script komutları uygulayan web tasarımcılara nazaran daha çok veritabanı yöneticileri için önem teşkil ediyor.
  • Güvenlik
MySQL ile SQL Server arasındaki güvenlik farklılıklarını karşılaştırırken yüzeyde bakılacak çok fazla birşey yok. Her ikiside EC2 uyumlu, bunun anlamı hangisini seçerseniz seçin muhtemelen güvende olacaksınız. Bunun yanında Microsoft’un gölgesi burada kendini yine belli ediyor çünkü SQL Server sahipli, teknoloji harikası güvenlik özellikleriyle donatılmış. Microsoft Baseline Security Analyzer adındaki özel güvenlik aracı, SQL Server için güvenliğin arttırılmasını sağlıyor. Yani, güvenlik sizin için önemli bir öncelik ise, seçiminiz bu noktada belli oldu.
  • Masraf
SQL Server burada daha az çekici seçenek haline gelerek, MySQL biraz öne geçiyor. Microsoft SQL Server’da çoklu veritabanı çalıştırabilmek için lisans satın almanızı istiyor. Ücretsiz bir sürümü olsa da bu sürümün amacı sadece RDBMS’ye alışkanlık kazanmanız. Buna karşın, MySQL GNU General Public License kullanıyor ve bu sayede kullanımı tamamen ücretsiz. Ancak unutmayın, MySQL için yardıma veya desteğe ihtiyacınız olursa bunun için para ödemelisiniz.
  • Topluluk Desteği
Bu da bizi bir sonraki noktaya getiriyor. MySQL desteği için ödeme yapabilseniz de bu na genellikle ihtiyaç olmuyor çünkü topluluğu devasa seviyede şekilde katkıda bulunarak destek sunuyor. Daha geniş bir topluluğun olduğu tarafta olmak sizi resmi destek isteme zahmetinden kurtarıyor, tek yapmanız gereken çözüm için internette arama yapmak.
  • IDE’ler
Her iki RDMBS’nin de farklı Integrated Development Environment (IDE), yani Tümleşik Geliştirme Ortam araçları bulunuyor. Bu araçlar geliştirme için bağlı birer ortam sunar ve size en uygununun hangisi olduğuna yakından dikkat göstermeniz gerekiyor. MySQL, Oracle’ın Enterprise Manager’ından güç alıyor. SQL Server ise Management Studio (SSMS) kullanıyor. Her ikisinin de artıları ve eksileri bulunduğundan eğer karar vermekte zorlanıyorsanız bu artı ve eksiler seçiminize etki edebilir.
Sonuç
RDMBS seçimi uygulama geliştirmeye yeni başlayanlar için önemli bir nokta. Sistemlerden birisini seçmiş kişiler daha sonraları nadiren diğerine geçiş yapıyor, bu sebeple sunulan farklılıkları dikkatli şekilde tartmanız ve size en uygununu seçmeniz gerekiyor.
Bu rehberde en yaygın olarak kullanılan iki RDMBS’yi, MySQL ve Microsoft’un SQL Server’ını inceledik. İkisi arasındaki bazı kilit farklılıkları belirterek tek bir tanesinin bile kararınızı nasıl etkileyebileceğini gösterdik.
Nihai olarak seçim sizin. Genel kabul görmüş bir kural olarak, eğer küçük ve orta ölçekli uygulamalar geliştirerek çoğunlukla PHP kullanıyorsanız tercihiniz MySQL olmalıdır. Diğer yandan eğer ilgi alanınız geniş ölçekli, güvenli, dirençli kurumsal uygulamalarsa, SQL Server sizin için daha uygun olacaktır.