# Microsoft SQL Server
Microsoft SQL Server, Microsoft tarafından geliştirilen ve yönetilen bir ilişkisel veritabanı yönetim sistemidir. SQL Server, büyük ve karmaşık veritabanlarını depolamak, yönetmek, sorgulamak ve işlemek için kullanılan bir yazılım ürünüdür. Veri depolama, veri güvenliği, yedekleme, geri yükleme, veri entegrasyonu, analiz ve raporlama gibi çeşitli veritabanı yönetimi işlevlerini destekler.
SQL Server, Microsoft'un Windows işletim sistemi platformu üzerinde çalışır.
SQL Server, Transact-SQL (T-SQL) adında Microsoft'a özgü bir SQL varyantını kullanır. Bu dilden kullanıcılar veritabanına sorgular, işlemler ve depolama mantığı ekleyebilirler. Ayrıca SQL Server, raporlama hizmetleri, analitik servisler, entegrasyon hizmetleri gibi ek bileşenlerle de genişletilebilir.
Farklı sürümleri, farklı özellik ve kapasiteler sunar. Örneğin, SQL Server Express sürümü ücretsizdir ve daha küçük ölçekli projeler için uygundur, Enterprise sürümü büyük kuruluşların karmaşık veritabanı gereksinimlerini karşılamak üzere tasarlanmıştır.
Microsoft SQL Server, geniş işlevselliği, güvenliği ve ölçeklenebilirliği nedeniyle birçok işletme ve kuruluş tarafından tercih edilen bir veritabanı yönetim sistemidir.


## Tarihi.
### Doğuşu.
Versiyon 7.0'dan önce "kod tabanı" Sybase SQL Server tarafından Microsoft'a satıldı ve bu Microsoft'un kurumsal seviyede veritabanı pazarına girişi oldu. Sybase SQL Server 3.0 ile esasen aynı olan ilk versiyon, SQL Server 1.0'ı yaratmak ve pazarlamak adına Microsoft, Sybase ve Ashton-Tate ile takım oluşturdu. 1992'de Microsoft SQL Server 4.2 sevkedildi. Daha sonra Windows NT 3.1 ile aynı zamanda Microsoft SQL Server 4.21 piyasaya sunuldu. Microsoft SQL Server 6.0 Windows NT için dizayn edilmiş ilk versiyon olmasıyla birlikte Sybase'den talimat alınmaksızın piyasaya çıkartıldı.
SQL Server 7.0, miras Sybase kodu ile yazılan bir "rewrite" sürümü oldu ve yerine SQL Server 2000 çıkartıldı. SQL Server 2000, IA-64 mimarisinden farklı olarak yazılan ilk sürüm oldu.
SQL Server 2000 sürümünden 10 yıl sonra performansta artışlar görüldü, IDE araçlarını ve tamamlayıcı başka sistemleri içeren SQL Server 2005 piyasaya sunuldu.


### SQL Server 2005.
SQL Server 2005 (Kod Adı Yukon), Ekim 2005 tarihinde piyasaya sunuldu. İlişkisel dataya ek olarak, XML datayı düzenlemeye destek içerdi. Bu amaçla, veritabanı sütunlarında bir veri tipi ya da sorgularda sabitler (literals) olarak kullanılabilecek bir XML veri tipi tanımladı. Özelleştirilmiş indeksleme, XML veri için kullanılabilir hale geldi. XML veri, XQuery kullanılarak sorgulanma imkânı sunuldu, bu sayede kişinin CLR (Common Language Runtime) ile Yönetilen Kod (Managed Code) olarak SQL kodu yazmasını mümkün kıldı. SQL Server 2005 ayrıca T-SQL içerisine XQuery sorgularını yerleştirmek için T-SQL diline eklemeler yaptı. Ek olarak, XQuery'ye, XML veriye sorgulama bazlı modifikasyonları mümkün kılan "XML DML" adı verilen yeni bir eklenti tanımladı.
SQL Server 2005, yeni indeksleme algoritması ve daha iyi hata geri dönüştürme (error recovery) gibi yeni özellikler ile geldi. İzinler ve giriş kontolü daha granüler hale getirildi ve sorguların eşzamanlı olarak sorgulama işlemcisi (query processor) tarafından yürütülmesi daha etkin hale getirildi. Tablo üzerindeki bölümlemeler ve indeksler desteklendiğinden, veritabanı kümeleme kolaylaştırıldı. .NET Framework ile birleşimi için SQL Server 2005 ile birlikte SQL CLR tanıtıldı.
SQL Server 2005, çoklu amaç için veritabanı kullanımını sağlayan "MARS"'ı (Multiple Active Results Sets) tanıttı.
SQL Server 2005, "Server instance" sağlığının kontrol edilmesi, problem teşhis etme ve performans ayarı gibi bilgilerin edinilmesini sağlayan "DMVs" (Dynamic Management Views) teknolojisi tanıttı.


### SQL Server 2008.
SQL Server'ın bir sonraki sürümü, SQL Server 2008, 6 Ağustos 2008 tarihinde piyasaya sürüldü. Neredeyse sıfır kapalı kalma süresi, veri yönetimini kendi kendine ayarlanabilen, organize olabilen ve devamlılığını sağlayan bir hale getirmek SQL Server 2008'in getirdiği yeniliklerden bazılarıydı. SQL Server 2008 ayrıca, resim, video ve diğer multimedya formatlarını da içeren, yapılandırılmış ve yarı-yapılandırılmış veriler için destek sundu.
Mekana bağımlı (location-dependent) veri için özelleştirilmiş tarih ve zaman tipleri ve Mekansal veri (Spatial data) yeni veri tipleri arasında yerini aldı. Dosya sistemindeki herhangi bir dosyanın referans edilmesi için yapılandırılmamış ve yarı-yapılandırılmış verilere daha iyi destek, yeni veri tipi "FILESTREAM" ile sağlandı.
Yönetimi kolaylaştıran ve performansı arttıran Tam Metin Arama (Full-Text Search) özelliği SQL Server 2008 ile birlikte tanıtıldı.
SQL Server 2008, ölçeklendirmeye ve indeksleme algoritmalarına da katkıda bulunan ve "filtrelenmiş indeksler" (filtered indexes) kavramıyla açığa çıkan, daha iyi sıkıştırma özellikleri de getirdi.
SQL Server 2008 ayrıca veritabanlarını "Cmdlets" olarak Windows PowerShell sağlayıcıları üzerinden kullanılabilir hale getirdi, bu sayede sunucu ve çalışan tüm oluşumlar Windows PowerShell üzerinden yürütülebilir duruma geldi.


### SQL Server 2008 R2.
SQL Server 2008 R2 (eski Kod Adı "Kilimanjaro") TechEd 2009'da duyuruldu ve 21 Nisan 2010 tarihinde piyasaya sunuldu. SQL Server 2008 R2, SQL Server 2008'e ek olarak ana veri birimleri ve hiyerarşileri yönetimi sağlayan "Master Data Services" olarak adı geçen yeni bir ana veri yönetim sistemi ekledi. Ayrıca çoklu SQL Server oluşumlarını yönetmeye yarayan Çoklu Sunucu Yönetimi (Multi Server Management), Raporlama Servisi (Reporting Service), Analiz ve Integrasyon Servisleri (Analysis & Integration Services), Excel ve SharePoint için "PowerPivot", "StreamInsight", eklenen yeni özellikler arasında olduğu görüldü.


## Versiyonlar.
Microsoft, SQL Server'ı farklı versiyonlar ile sunmaktadır. Bu versiyonlar, farklı özellik setleri içerdiği gibi, farklı kullanıcıları da hedef alır.


### Temel (Mainstream) Versiyonlar.
  - Datacenter: SQL Server 2008 R2 Datacenter, yüksek seviye uygulama desteği ve ölçeklenebilirlik ihtiyaçlarını gideren, verimerkezleri (datacenters) için tasarlanmıştır. 256 mantıksal işlemciyi ve neredeyse sınırsız hafıza desteklemektedir. StreamInsight Premium versiyonuyla birlikte gelmektedir.
  - Enterprise: SQL Server Enterprise sürümü, SQL Server kümelerini yaratmak ve düzenlemek için gerekli araçları içeren versiyon olup, çekirdek veritabanı motoru ve add-on servislerini desteklemektedir. 524 petabayta kadar veritabanı yönetebilmekte, 2 terabayt hafıza içermekte ve 8 fiziksel işlemci desteklemektedir.
  - Standard: SQL Server Standart sürümü, çekirdek veritabanı motorunu, bağımsız servislerle (stand-alone services) birlikte içermektedir. Daha az aktif instance (kümedeki ağ sayısı) desteklemesi, hot-add memory (sunucu çalışırken hafıza eklenebilmesi) gibi yüksek süreklilik fonksyonları ve paralel indeksleri içermemesi, SQL Server Enterprise versiyonundan farklı olduğu noktalar olmaktadır. 
  - Web: SQL Server Web sürümü, Web hosting için "low-TCO" (toplamda sahip olma maliyeti) bir seçenektir.
  - Workgroup: SQL Server Workgroup sürümü, çekirdek veritabanı fonksyonlarını içermekte ancak ek servisleri içermemektedir.
  - Express: SQL Server Express sürümü, çekirdek veritabanı motorunu içeren, ücretsiz bir versiyondur. Veritabanı ve kullanıcı sayısında bir sınırlama yoktur, ancak 1 işlemci, 1 GB hafıza ve 4 GB veritabanı dosya limiti bulunmaktadır.


### Özelleştirilmiş (Specialized) Versiyonlar.
  - Azure: Microsoft SQL Azure Veritabanı, Microsoft SQL Server'ın bulut bazlı (cloud-based) versiyonudur. Azure Servisleri Platform'unda "software as a service" (servis olarak yazılım) olarak sunulmuştur.
  - Compact (SQL CE): SQL Server Compact sürümü, gömülü bir veritabanı motorudur. Diğer SQL Server versiyonlarının aksine, SQL CE motoru, SQL Mobile (başlangıçta mobil cihazlar için tasarlanmıştır) üzerine kuruludur ve aynı ikili değerleri paylaşmamaktadır. Boyutunun küçüklüğüne (1 MB DLL footprint) ek olarak, özellik setleri belirgin olarak azaltılmıştır. Windows Service olarak çalıştırılamayacağı gibi, 4 GB veritabanı limiti bulunmaktadır.
  - Developer: SQL Server Developer sürümü, SQL Server Datacenter versiyonuyla aynı özellikleri içermektedir, ancak sadece geliştirme (development) ve test sistemi olarak kullanılabilmektedir. 
  - Embedded (SSEE): SQL Server Embedded sürümü, SQL Server Express veritabanı motorunun, sadece belli Windows Servisleri tarafından ulaşılabilen, özel olarak düzenlenmiş bir ismidir.
  - Evaluation: SQL Server Evaluation sürümü, Deneme Sürümü (Trial Edition) olarak da bilinen, Enterprise versiyonunun tüm özelliklerini içeren, sadece 180 günle sınırlı olan versiyonudur.
  - Fast Track: SQL Server Fast Track, özel olarak, ticari kurum bazında, veri depolama ve zeka işleme (intelligence processing) işlemlerinde kullanılan versiyondur.
  - Parallel Data Warehouse (PDW): Parallel Data Warehouse sürümü, yüzlerce terabaytlık veri depolama işlemleri için optimize edilmiş versiyondur.