Remote DAC engedélyezése

Ez egy olyan beállítás, ami nagyon hasznos tud lenni, 99%-ban be is állítom egy-egy új SQL Server telepítése során.

Mi az a DAC?

A DAC a Dedicated Administrator Connection rövidítése. Ezt olyankor használom, amikor:

  • olyan rendszer táblát akarok elérni, amit másképpen nem lehet. Ezek általában valamilyen nem dokumentált/támogatott esetek.
  • más módon nem érhető el az SQL Server, mert úgy tűnik nem válaszol, illetve annyira sok erőforrást használ egy vagy több lekérdezés miatt, hogy a hiba felderítése csak ezen lehetséges.

Utóbbi eset a leggyakoribb, mivel a DAC garantálja, hogy nagy terhelés mellett is elérhető és lekérdezhető - korlátok mellett - az SQL Server.

Hogyan kell beállítani?

Ha nem szükséges távolról elérni, akkor semmi dolog nincs, de a távoli beállításhoz két dologra is szükség van:

  • Engedélyezni kell a remote DAC-ot.
  • Tűzfalon be kell állítani a DAC portját.

Az engedélyezés rém egyszerű, az alábbi kód segítségével:

1EXEC sp_configure 'remote admin connections', 1
2RECONFIGURE

Vajon melyik porton figyel a DAC? Ezt már egy kicsit bonyolultabb meghatározni. Alapvetően a TCP 1434-es porton figyel, ha az szabad a beállítás során. Ha nem, akkor az SQL Server Error Log-ban lesz benne:

Message
Dedicated admin connection support was established for listening remotely on port %i.

A %i helyén megadott portot kell majd a tűzfalon beállítani.