Windows Server Core Üzerine SQL Server 2012 Kurulumu
SQL Server 2012 ile gelen yeniliklerden biri de, artık SQL Server 2012 nin Windows Server R2 Core Edition üzerine kurulabilmesi oldu. Windows Server ailesinin Core Edition sürümleri daha minimalist bir alanda Windows Shell olmadan ve aşırı sınırlandırılmış GUI özellikleri ile komut satırı (cmd.exe) üzerinden yönetilen bir sürüm olarak ortaya çıktı. Nadir de olsa bu sürüm karşımıza çıkmakta.
Ben bu nadirliklerden biri ile karşı karşıya gelmiş biri olarak sizlere basitçe SQL Server 2012 nin Server Core üzerine kurulumunu aktarmaya çalışacağım Aslına bakacak olursanız SQL Server 2012'nin Server Core üzerine kurulumu SQL Server ın komut satırından kurulumu ile aynı adımları izlemekte.
Görüldüğü üzere setup dosyasını çalıştırdığımız anda SQL Server bize gerekli uyarısını yapıyor ve bizi direkt olarak komut satırından silent kurulum seçeniğine yönlendiriyor. Ben bu makale için oldukça basit bir kurulum komutu kullandım.
setup.exe /qs /ACTION=INSTALL /FEATURES=SQLEngine,IS,CONN /INSTANCENAME=MSSQLSERVER /TCPENABLED=1 /IACCEPTSQLSERVERLICENSETERMS /SQLSVCACCOUNT="Domain\Kullanici Adi" /SQLSVCPASSWORD="Şifre" /SQLSYSADMINACCOUNTS="Domain\Kullanici Adi"
Genel olarak kullandığımız bazı parametreleri açıklacak olursak.
-
/qs : Sadece kurulum aşamalarını gösterir ancak GUI'ye müdahale ettirtmez.
-
/ACTION=INSTALL : Yeni bir SQL Server Instance'ı kurulacağını belirtir.
-
/FEATURES=SQLEngine,IS,CONN : SQL Server Feature'larından Database Engine, Integration Service ve de Connectivity Components kurulacak.
-
/INSTANCENAME=MSSQLSERVER : Kurulacak SQL Server'ın instance ismi.
-
/TCPENABLED=1 : Remote bağlantı açılacak (doğal olarak)
-
/IACCEPTSQLSERVERLICENSETERMS : Lisans'ı kabul et (katılımsız kurulumlarda gerekli)
Burada tüm kurulum parametrelerinden de bahsetmek ana konudan sapmamıza yol açacağından dolayı diğer parametreleri öğrenmek isteyenler http://msdn.microsoft.com/en-us/library/ms144259.aspx adresinden diğer parametreleri inceleyebilirler.
Server Core'un kısıtlamalarından dolayı SQL Server 2012'nin tüm feature'larını kullanma şansınız olmayacak. Server Core üzerine Reporting Services, Management Tools, Master Data Services ve Data Quality Services feature'ları ne yazık ki kurulamıyor.
Kurulum bittikten sonra MSSQLSERVER servisini task manager'da görme şansınız olacak.

Tabii ki Management Studio'nun yokluğundan dolayı SQL Server'ı yönetmek için kullanacağız araçlar da komut satırı araçları olmak zorunda. Örneğin bu araçlardan biri olan sqlcmd yardımı ile aşağıdaki script yardımı ile SQL Server'a uzak erişimi açabilirsiniz.

Server Core'da kullanabileceğimiz diğer SQL Server araçlarımız ise; (not=bu araçlar sadece ssms olmadığı durumlarda değil her zaman işlerinizi kısaltıp otomatize etmek için kullanılanılabilir)
-
bcp : SQL Server ile bir veri dosyası arasında veri transferi için.
-
sqlcmd : SQL Server üzerinde T-SQL komutları ve procedürleri çalıştırabileceğiniz komut satırı aracı
-
sqlps : powershell komutlarını çalıştırabileceğiniz arabirim.
-
dtutil : SSIS paketlerini yönetmek için kullanılan araç.
Server Core'un yapısından dolayı eğer uzak bir makineye SSMS kurup Server Core üzerindeki SQL Server 2012 yi yönetme şansınız yok ise size tavsiyem temel windows komutları ve özellikle powershell tarafında kendinizi geliştirmeniz olacaktır.

Görüldüğü üzere yapacağınız en basit işlemler bile windows komutları ile yürümekte. Bu sebeple bana göre özellikle powershell bilgisi artık sadece sistemciler için değil SQL Server yöneticileri içinde önemli hale gelmiş durumda.