sql szerver

felügyeleti eszközök

Activity Monitor

sp_who és sp_who2

A képernyőkép kimenete sp_who (felső) és sp_who2 (alsó) során végrehajtott épít az azonos jelentés:

sql szerver

Ez a tájékoztatás nem nagyon informatív. Nézzük sp_who, csak akkor tudjuk látni, hogy történik valami, vagy néhány SELECT-.
sp_who2 mutatja, hogy több információt. Most már láthatjuk, hogy mennyi CPU időt Session (oszlop és adja ki a teljes időt, úgy tűnik) a száma, i / o-üzemeltetés, a neve az adatbázist, amelyben mindez megtörtént, és aki lezárta ezt a kapcsolatot (ha le van zárva).
Activity Monitor, mint láttuk, több információt nyújt.

sp_WhoIsActive

A többi oszlop a szabványos kimeneten sp_WhoIsActive kevés érdeklődést, és írja le őket, nem fogok - céljuk, azt hiszem, egyértelmű, hogy az összes (gazdagép_név, database_name, programnév, start_time, login_time, REQUEST_ID, collection_time).
De ez még nem minden. Mégis azt fogja mondani, amit (a leginkább érdekes és hasznos, az én szempontból) paraméterek nevezhető sp_WhoIsActive és mi történik.

  • @help - ez borzasztó hasznos lehetőség. Ha telefonál sp_whoIsActive @help = 1. eljut a képernyő információt a paramétereket és a kimeneti oszlopok. Tehát, ha valami még nem tisztázott, akkor mindig látni a „help”
  • @filter_type és @filter - lehetővé teszi, hogy filter teljesítmény eredményeit. @filter_type vehet az értékeket „ülés”, „program”, „adatbázis”, „belépés” és a „fogadó”. Paraméterben @filter megadjuk, hogy melyik objektum a kiválasztott típus az érdeklődés. Például, szeretnénk látni az összes ülés, hogy fut a mester adatbázis, erre a hívásra exec sp_whoIsActive @filter_type = „adatbázis”, @filter = „mester”. Paraméterben @filter megengedett az „%”;
  • @not_filter_type és @not_filter - lehetővé teszi számunkra, hogy kiszűrje a „vice versa”. Ie például azt akarjuk, hogy az összes ülés kivéve azokat, akik a «adatbázis» részben a „mester”, hogy végezze el ezt exec sp_WhoIsActive @not_filter_type = „adatbázis”, @not_filter = „mester”. Nos, azt szeretné látni, hogy minden felhasználó számára, kivéve a felhasználó sa ... Alkalmazások lehet beállítani. Paraméterben @not_filter megengedett az „%”;
  • @show_system_spids = 1 - mutatja a rendszerrel kapcsolatos információkat üléseken;
  • @get_full_inner_text = 1 - a sql_text terén ez lesz nem csak a szöveg az aktuális kérés (steytmenta) a csomagban (Butch), és a szöveg, a teljes tételt teljes egészében;
  • @get_plans - egy oszlopot hozzáadni a következtetést a lekérdezés végrehajtási terve;
  • @get_transaction_info = 1 - Hozzáadás a következtetésre száma és volumene rekordok tranzakciónaplót, valamint a kezdési időpont az utolsó ügylet;
  • @get_locks = 1 - hozzá a következtetés az összes zárat kiszabott végrehajtása során a kérelem;
  • @find_block_leaders = 1 - nyomára zárak és megmutatja az összes ülés vár felszabadítása az aktuális munkamenet;
  • @output_column_list = „[dd%] [session_id] [sql_text] [sql_command] [login_name] [wait_info] [feladatok] [tran_log%] [CPU%] [temp%] [blokk%] [olvasva%] [írja%] [kontextusban%] [fizikai%] [query_plan] [zárak] [%] -, és hirtelen nem akarja látni az adatokat a kimeneti tempdb sp_whoIsActive? Ezzel a paraméterrel lehet szabályozni, hogy kimenetek;
  • @destination_table = „table_name” - kísérlet, hogy helyezze az eredmény a rekord az asztalra, de ha a tábla hiányzik-e a jogot, hogy helyezze be azt nem fogja ellenőrizni ott.

Ennek eredményeként, van egy másik rendkívül kényelmes és rugalmas eszköz nyomkövető jelenlegi tevékenysége az SQL Server. A normál működés elég VIEW kiszolgáló állapotára engedélyt, és jogorvoslattal élhet a DMV.
Azt is meg kell hozzá, abban az esetben, ha a szerver is csatlakoztatható csak a Dedikált felügyeleti kapcsolat. hívja sp_whoIsActive megy a bumm, míg a Activity Monitor, sajnos, nem kap futtatni.

És mi az SQL Server nyomon több módon, hogy ismerlek?

Kapcsolódó cikkek