SQL Server 2000 Servislerini Tanımak

@ 06 Haziran 2004 tarihinde yazdı. Yazıya yorum yazın.

Seviye : Başlangıç


Tavsiye Edilen Önhazırlık

  • SQL Server 2000′in temel işlev ve özelliklerini öğrenmek.

    Hedefler
  • SQL Server 2000′in servislerinin özellik ve işlevlerini tanımlayabilmek.

  • İlk iki bölümde SQL Server 2000′in temel özellikleri ve kurulumu hakkında bilgi edindik. Kurulumu gerçekleştirdiğimize göre artık SQL Server 2000′i kullanıma hazırız. Ama kullanıma geçmeden önce bir kaç noktayı daha incelememiz gerekiyor. Bunlardan biri olan servisler konusunu bu makalede inceliyor olacağız.

    Windows servisleri kullanıcı müdahelesi gerekmeden, sistem açılışında otomatik olarak çalışabilen uygulamalardır. Servisler genellikle ana uygulamaların yardımcısı olarak tasarlanırlar. Windows NT, Windows 2000, Windows 2003 Server ve Windows XP işletim sistemlerinde çalıştırılabilirler. Servis tanımını şu örnek ile canlandıralım; herhangi bir bilgisayarı web sunucusu olarak yapılandırdığımızı düşünelim. Bilgisayar açıldığında, herhangi bir kullanıcı giriş (log on) yapmasa bile arka tarafta otomatik olarak başlayan bazı Windows servisleri (World Wide Web Publishing Service,…) sunuculuk yapabilmek için gerekli işlevleri yerine getirirler. Burada iki katman karşımıza çıkıyor. Birincisi ana uygulama (web sunuculuğu) , ikincisi yardımcı servisler (World Wide Web Publishing Service,…). Tıpkı burada olduğu gibi SQL Server 2000 bazı servislerle veritabanlarını yönetebilmek, bellek düzenlemesini gerçekleştirebilmek, önceden belirlenmiş zamanlarda yedek alabilmek gibi işlevlerini yerine getirebilmek üzere servisler kullanır.

    SQL SERVER 2000 SERVİSLERİ

    1.SQL Server Service
    SQL Server’ın temel işlevlerini yerine getirmesini sağlayan veritabanı motorunu sunan servistir. Her SQL Server örneği (instance) için ayrı bir SQL Server servisi bulunur.

    2.SQL Server Agent Service
    SQL Server Agent belirli zamanlarda belirli görevleri yerine getiren bir servistir. Belirlenmiş şartlarda SQL Server’ın nasıl davranacağını SQL Server Agent’ı ayarlayarak belirleyebiliriz. Örneğin “işlemciye %85′in üzerinde yükleme yapılırsa veritabanı yöneticisinine e-posta gönder” şeklinde bir yapılandırma bu servisle mümkündür. Aynı şekilde her gece saat ikide yedek alınması SQL Server Agent ile otomatikleştirilebilir. Her SQL Server örneği (instance) için ayrı bir SQL Server Agent bulunur.

    SQL Server Agent, SQL Server’ın temel işlemlerinden farklı bir katmanda yer almaktadır. Bu sayede SQL Server bir sorunla karşılaşıp çalışamaz duruma geldiğinde dahi SQL Server Agent bu sorunu kotarabilir. Bu sebeple SQL Server Agent sürekli çalışır durumda olmalıdır.

    3. Microsoft Distributed Transaction Coordinator Service
    Bu servis, dağıtık sistemlerde görevleri olan ve birbirine bağlı işlemlerin birlikte çalışabilirliğini düzenler. Bir banka düşünelim; farklı illerde, farklı işlemler için ayrılmış sunucuları olsun. Müşteri herhangi bir işlem yaptığında, bu işlemin birkaç farklı sunucu üzerinde dolaştırılması gerekebilir. Bir sunucudan bakiye bilgilerinin güncellenmesi gerekirken diğerinden hediye puan hesaplanmasının yapılması gerekebilir. Farklı sunucular üzerinde gerçekleşen bu işlemler birbirine bağlıdır (transactional). Yani herhangi bir sunucuda sorun oluşursa diğer sunucuların yaptığı işlemlerin de geri alınması gerekir. Microsoft Distributed Transaction Coordinator Service herhangi bir anda bir sorun olursa birbirine bağlı işlemlerin geri alınmasından, sorun olmazsa işlemlerin onaylanmasından sorumludur.

    4. Microsoft Search Service
    Tamamen metin tabanlı dizinleme ve araştırma sayesinde birbirine yakın kelimeleri arayabilir, herhangi bir kelimeyi içeren katarları listeleyebilirsiniz. Tamamen metin tabanlı dizinleme ve araştırma (full-text indexing and searching) kullanıldığında arkaplanda gerekli işlemleri yerine getiren Microsoft Search servisidir. Tüm SQL Server örnekleri (instance) için tek bir Microsoft Search servisi bulunur.

    SERVİSLERİN YÖNETİMİ

    Herhangi bir servisi başlatmak ya da durdurmak için SQL Server Service Manager kullanılabilir.
    Başlat menüsünden Microsoft SQL Server gurubundan Service Manager’ı seçin. Aşağıdaki gibi bir arabirimle karşılaşacaksınız.

    servicemanager

    Server isimli aşağı açılan listeden sunucunuzu seçin. Seçeceğiniz sunucu yerel olabileceği gibi ağ üzerindeki herhangi bir sunucu da olabilir. Services isimli aşağı açılan listeden ise yönetmek istediğiniz servisi seçin. Belirlediğiniz servisi hemen altındaki düğmeleri kullanarak başlatabilir, çalışmasına ara verebilir ve durdurabilirsiniz. Belirlenen servisin mevcut durumu sol taraftaki şeklin sağ altındaki yuvarlak içinde belirtilmektedir.

    Herhangi bir servise ara verdiğinizde servis yeni isteklere cevap vermeyecektir. Ancak kullanıcılara oturumlarını kapatmak için imkan verecektir. Herhangi bir servisi durdurduğunuzda ise hemen o an bağlantılar kesilecek ve yeni isteklere cevap verilmeyecektir. Bazı servislerin işletim sistemi başladığında otomatik olarak başlamasını istiyorsanız hemen alttaki “Auto-start service when OS starts” seçeneğini seçin.

    Service Manager çalışırken varsayılan olarak her 5 saniyede bir sunucunun çalışıp çalışmadığı hakkında bilgi alır. Bu aralığı değiştirmek için sol üstteki simgeye tıklayın ve Options‘u seçin.

    servicemanageroptions

    Buradan Service Manager açıldığında varsayılan olarak açılacak servisi (Default Service) ve yenileme aralığını (Polling interval) belirleyebilirsiniz. Eğer her işlem için onay alınmasını istiyorsanız “Verify service control action” onay kutusunu işaretleyin.

    Herhangi bir servisi başlatma veya durdurma işlemlerini Windows işletim sistemlerinin servis yönetim arabirimi ile de gerçekleştirilebilir. Windows ME ve daha öncesinde servisler çalıştırılamaz. Windows 2000, Windows XP ya da Windows 2003 Server işletim sistemlerinden Başlat menüsünden Çalıştır‘ı seçip “services.msc” yazarak servis yönetim arabirimini çalıştırabilirsiniz.

    windowsservicemanager

    Açılacak listeden istediğiniz servisi (Distributed Transaction Coordinator, Microsoft Search, MSSQLSERVER veya SQLSERVERAGENT) başlatabilir, çalışmasına ara verebilir ya da tamamen durdurabilirsiniz. Servise çift tıkladığınızda açılan pencereden ise servisin detaylı ayarlarına ulaşabilirsiniz. General sekmesinde servisin açıklamasına ulaşabilir, nasıl başlayacağını belirleyebilirsiniz. Startup type listesinden Automatic seçeneğini seçerseniz işletim sistemi başladığında herhangi bir müdahaleye gerek kalmadan servis başlayacaktır. Eğer Manuel‘i seçerseniz servisi elle başlatıp durdurmanız gerekecektir. Disabled ise otomatik olarak veya elle müdahele ile servisin başlatılmasını engelleyecektir. Log On sekmesinde servisin hangi kullanıcı hesabıyla başlatılacağını belirleyebilirsiniz. Recovery sekmesinden servisin hata anında nasıl davranacağını belirleyebilirsiniz. Son olarak da Dependencies sekmesinden servisin hangiservislerle bağlantılı olduğu görebilirsiniz. Örneğin SQL Server Agent servisi SQL Server servisine bağlıdır ve SQL Server servisi çalışmadan çalışamaz.

    Böylelikle SQL Server servislerin ne işe yaradıklarını ve nasıl yönetileceklerini öğrenmiş olduk.

    Bu makalede öğrendiklerimiz

  • Windows servisleri nedir?
  • SQL Server 2000 ile gelen servisler nelerdir?
  • Servisler nasıl yönetilir?