Sql server

Instrumente de monitorizare

Monitorizarea activității

sp_who și sp_who2

În captura de ecran, rezultatul executării sp_who (de sus) și sp_who2 (din partea de jos) a fost executat în timpul construirii aceluiași raport:






Sql server

Această prezentare a informațiilor nu este foarte informativă. Privind la sp_who, putem vedea doar că ceva este executat sau mai multe SELECT-uri.
sp_who2 prezintă mai multe informații. Acum putem vedea cât de mult timp CPU petrecut sesiune (coloana și adăugați până timpul total, aparent), numărul de I / O-operare, numele bazei de date în care toate acestea se face, și care au blocat această sesiune (dacă este blocat).
Monitorizarea activităților, după cum vedem, oferă mai multe informații.

sp_WhoIsActive

Coloanele rămase în ieșirea standard sp_WhoIsActive puțin interes, și le descrie, nu voi - scopul lor, cred că este clar tuturor (HOST_NAME, nume_bază_de_date, program_name, START_TIME, login_time, REQUEST_ID, collection_time).
Dar asta nu e tot. De asemenea, vă voi spune despre ce (parametrii cei mai interesanți și mai folositori, din punctul meu de vedere) pot fi numiți sp_WhoIsActive și ce va veni din ea.

  • @ help este o opțiune extrem de utilă. Când apelăm sp_whoIsActive @help = 1. primim informațiile despre toți parametrii și coloanele de ieșire. Deci, dacă ceva rămâne neînțeles, puteți vedea întotdeauna "ajutorul"
  • @filter_type și @filter - permite rezultate de performanță filtru. @filter_type poate lua „sesiune“ valorile, „program“, „bază de date“, „conectare“ și „gazdă“. În parametrul @filter, specificăm ce obiect de tipul suntem interesați. De exemplu, vrem să vedem toate sesiunile care se execută în baza de date de master, pentru acest apel Exec sp_whoIsActive @filter_type = „baza de date“, @filter = „maestru“. Parametrul @filter permite utilizarea "%";
  • @not_filter_type și @not_filter - ne permite să filtreze „vice-versa.“ Ie de exemplu, vrem să vedem toate sesiunile cu excepția celor care au o «bază de date» caseta este „maestru“, pentru a efectua acest Exec sp_WhoIsActive @not_filter_type = „baza de date“, @not_filter = „maestru“. Ei bine, vrem să vedem că pentru toți utilizatorii, cu excepția utilizatorului SA ... Cererile pot fi setate. Parametrul @not_filter permite utilizarea "%";
  • @show_system_spids = 1 - va afișa informații despre sesiunile de sistem;
  • @get_full_inner_text = 1 - în câmpul sql_text va fi nu doar textul cererii curente (steytmenta) în pachetul (Butch), iar textul întregului lot în întregime;
  • @get_plans - adaugă o coloană cu planurile de executare a interogărilor la ieșire;
  • @get_transaction_info = 1 - va adăuga la ieșire numărul și volumul intrărilor din jurnalele de tranzacții, precum și timpul de la începutul ultimei tranzacții;
  • @get_locks = 1 - adaugă la informațiile de ieșire toate blocările suprapuse la timpul de execuție;
  • @find_block_leaders = 1 - urmărește lanțul de încuietori și arată numărul total de sesiuni care așteaptă ca blocarea să fie anulată de sesiunea curentă;
  • @output_column_list = „[dd%] [session_id] [sql_text] [sql_command] [login_name] [wait_info] [sarcini] [tran_log%] [cpu%] [temp%] [bloc%] [% reads] [scrie%] [context%] [% fizică] [query_plan] [blochează] [%] „- și dintr-o dată nu doriți să vedeți informațiile din producția de tempdb sp_whoIsActive? Cu acest parametru, puteți controla ce afișează;
  • @destination_table = 'table_name' - va încerca să introducă rezultatul executării într-un tabel, dar nu va verifica dacă există acest tabel și dacă există suficientă inserare directă în el.






Ca rezultat, avem un instrument extrem de convenabil și flexibil pentru monitorizarea activității curente pe SQL Server. Pentru funcționarea normală, este suficient să permiteți VIEW SERVER STATE și drepturile de acces la dmv.
De asemenea, merită adăugat, în cazul în care este posibilă conectarea la server numai prin conexiune de administrator dedicată. Chemarea la sp_whoIsActive trece prin ura, în timp ce Activity Monitor, din păcate, nu va începe.

Și ce alte metode de monitorizare a SQL Server știți?







Articole similare

Trimiteți-le prietenilor: