1. Ana Sayfa
  2. SQL Server
  3. SQL DAC (Dedicated Admin Connection) – Yöneticiye Ayrılmış Bağlantı

SQL DAC (Dedicated Admin Connection) – Yöneticiye Ayrılmış Bağlantı

SQL DAC Instance’da ciddi performans problemleri olduğunda ve bu yoğunluk sebebiyle sisteme bağlanamadığınızda, problemin sebebini inceleyebileceğimiz bir arka kapıdır. Bunu yapmak için kendisine tahsis edilmiş bağlantı, işlemci vb. kaynakları kullandığından sistemdeki performans problemlerine takılmadan müdahale imkânı tanır.

Instance’da DAC’ın aktif olup olmadığını kontrol etmek için Resim-1 ve Resim-2 deki yolu izleyebiliriz;


Resim-1


Resim-2

Burada RemoteDacEnable = False görüyorsanız enable etmek için bu seçimi True yapabilirsiniz ya da SQL kodu ile aktif etmek için;

EXEC sp_configure ‘remote admin connections’, 1

GO

RECONFIGURE

GO

kod bloğunu çalıştırmanız yeterlidir.

Bu işlemi yapıp DAC’ı aktif ettikten sonra SQLCMD ya da Management Studio aracılığıyla DAC bağlantısı sağlayabilirsiniz.

SQLCMD’de -A parametresi kullanmak, Management Studio’da ise bağlantının başına ADMIN: eklemek yeterli olacak.


Resim-3

Örneğin SUNUCU\INSTANCENAME şeklinde eriştiğimiz sunucuya DAC ile ADMIN:SUNUCU\INSTANCENAME şeklinde erişebiliriz.

DAC ayrılmış bir kaynaktır ve kısıtlıdır. Bu sebeple DAC bağlantısını aynı anda tek bir kullanıcı kullanabilir.

Problem durumları için ayrılmış bir kaynak olduğundan başka amaçlarla kullanılması (Batch vb.) tavsiye edilmez. DAC aktif olmasına rağmen bağlanamayıp hata alıyorsanız sistemde o anda DAC ile bağlı başka bir kullanıcı olabilir. (Resim-4 aynı anda iki DAC connection denemesi)


Resim-4

Error logunu kontrol edersek ;

“2014-10-21 13:13:09.11 Logon Could not connect because the maximum number of ‘1’ dedicated administrator connections already exists. Before a new connection can be made, the existing dedicated administrator connection must be dropped, either by logging off or ending the process. ”

hatasını görürüz.

Sistemde aktif bir DAC bağlantısı var ise hangi kullanıcı ile bağlanıldığını;

SELECT s.login_name,s.session_id,s.login_time,s.status, s.original_login_name

FROM sys.endpoints en

INNER JOIN sys.dm_exec_sessions s on en.endpoint_id=s.endpoint_id

WHERE en.name=’Dedicated Admin Connection’

Sorgusu ile elde edebiliriz.

NOT: DAC konusunda dikkat edilmesi gereken en önemli nokta problem oluşmadan DAC ın etkin hale getirilmesi, bu sayede olası problem anında müdahale imkânı tanımasıdır. Yazıyı okuduktan sonra Instance’ınızda DAC’ın aktif olup olmadığını kontrol ediniz.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

Yorum Yap

Yazar Hakkında

İstanbul Üniversitesi Bilgisayar Mühendisliği mezunudur. Kariyerine yazılım ile başlamış olup, zaman içerisinde .Net ve Dynamics Axapta üzerinde geliştirmeler yapmıştır. Son yıllarda yoğun olarak, veritabanı teknolojileri, iş zekası ve raporlama sistemleri ile ilgilenmektedir. Eroğlu Holding'de Bilgi Teknolojileri Proje Lideri olarak çalışmaktadır.

Yorum Yap