Қазір бөлісу:
Мазмұны жасыру
3. Әрекет мониторының тақталарын түсіну

1. кіріспе

1.1 не SQL Server Әрекет мониторы?

SQL Server Белсенділік мониторы - бұл кіріктірілген диагностикалық құрал SQL Server туралы ақпаратты көрсететін Management Studio SQL Server процестер және олардың сервер жұмысына әсері. Ол қадағалауға мүмкіндік береді SQL Server процестерді, ресурстарды күтуді бақылауды, қымбат сұрауларды талдауды және енгізу/шығару үлгілерін бақылаңыз — барлығы бір интерфейстен.

SQL Server Әрекет мониторингі

1.2 Неліктен пайдалану керек SQL Server Әрекет мониторы?

Белсенділік мониторы өнімділік ақаулықтарын жою кезінде қорғаныстың бірінші желісі ретінде қызмет етеді. Ол сіздің бойыңызда не болып жатқанын бірден көруге мүмкіндік береді SQL Server күрделі T-SQL сұрауларын немесе үшінші тарап құралдарын қажет етпейтін мысал.

Бұл құрал сеанстарды блоктау, процессорды қажет ететін сұраулар, сұрауларды шамадан тыс орындау және енгізу/шығару кедергілері сияқты жалпы мәселелерді жылдам анықтауға көмектеседі. Пайдаланушылар қолданбаның баяу немесе жауап бермеуін хабарлағанда, Activity Monitor дерекқор серверінің кінәлі екенін анықтауға көмектеседі.

Жұмыс істемейтін дерекқор әкімшілері үшін SQL Server Күн сайын Activity Monitor сервер белсенділігін түсіну үшін қолжетімді кіру нүктесін ұсынады. Тіпті тәжірибелі DBA-лар да оны өнімділікті зерттеу үшін бастапқы нүкте ретінде пайдаланады.

1.3 Белсенділік мониторы және басқа бақылау құралдары

Әрекет мониторы құнды болғанымен, оның басқа бақылау опцияларымен қалай салыстыратынын түсіну маңызды:

Белсенділік мониторы және sp_WhoIsActive: Белсенділік мониторы бірнеше тақталары бар графикалық интерфейсті қамтамасыз етеді, ал sp_WhoIsActive - бір нәтиже жиынында толығырақ ақпаратты ұсынатын толық сақталған процедура. sp_WhoIsActive Белсенділік мониторы біріктіретін арнайы күту түрлерін көрсетеді және блоктау туралы көбірек түйіршікті ақпаратты береді.

Белсенділік мониторы sp_who2-ге қарсы: Дәстүрлі sp_who2 пәрмені негізгі сеанс ақпаратын көрсетеді, бірақ әрекет мониторы күту статистикасын, қымбат сұрауларды және енгізу/шығару көрсеткіштерін ұйымдастырылған, көрнекі пішімде көрсету арқылы әрі қарай жүреді.

Белсенділік мониторы және үшінші тарап құралдары: SolarWinds Database Performance Analyzer сияқты коммерциялық мониторинг шешімдері Activity Monitor бағдарламасында жоқ тарихи бақылауды, ескертуді және кеңейтілген аналитиканы ұсынады. Дегенмен, Activity Monitor қосымша шығындарды немесе орнатуды қажет етпейді.

1.4 Дерекқор әкімшілеріне арналған негізгі артықшылықтар

Activity Monitor оны маңызды DBA құралына айналдыратын бірнеше артықшылықтарды ұсынады:

  • Нөлдік құны: Кірістірілген ретінде SQL Server Management Studio мүмкіндігі, лицензиялық алым немесе орналастыру үшін күш қажет емес.
  • Нақты уақыттағы бақылау: 1 секундтан 1 сағатқа дейінгі конфигурацияланатын жаңарту аралықтары бар ағымдағы сервер әрекетін қараңыз.
  • Біріктірілген әрекеттер: Сеанстарды жою, сұрау мәліметтерін көру немесе іске қосу үшін процестерді тінтуірдің оң жақ түймешігімен басыңыз SQL Server Профильдер іздері — барлығы құралдың ішінен.
  • Көптеген перспективалар: Әрқайсысы өнімділіктің нақты аспектілеріне назар аударатын бес мамандандырылған тақта арқылы сервер денсаулығын әртүрлі бұрыштардан қараңыз.
  • Ақаулықтарды жылдам жою: Ең көп таралған өнімділік мәселелерін бірнеше минут ішінде анықтаңыз, бұл сіздің шешім қабылдау уақытыңызды жеделдетеді.
  • Кірудегі төмен кедергі: Құралды тиімді пайдалану үшін тереңірек болса да қосымша білім қажет емес SQL Server сараптама түсіндіруге көмектеседі.

2. Белсенділік мониторымен жұмысты бастау

Әрекет мониторын тиімді пайдалана алмас бұрын, алғышарттарды, қажетті рұқсаттарды және құралды іске қосудың әртүрлі әдістерін түсінуіңіз керек.

2.1 Пререквизиттер мен жүйелік талаптар

Қолдану SQL Server Белсенділік мониторы, сізге қажет SQL Server Басқару студиясы (SSMS) жергілікті компьютерде немесе секіру серверінде орнатылған. Белсенділік мониторы құралы айтарлықтай қайта жасалды SQL Server 2008, сондықтан осы нұсқаулықтағы ақпарат қолданылады SQL Server 2008 және кейінгі нұсқалары.

Сізде желілік қосылым болуы керек SQL Server бақылағыңыз келетін данасы. Бұлтта орналастырылған дерекқорлар үшін данаға кіру үшін әдетте VPN қосылымы немесе дұрыс конфигурацияланған брандмауэр ережелері қажет болады.

Activity Monitor бағдарламасының барлық шығарылымдарымен жұмыс істейді SQL Server, соның ішінде Express, Standard және Enterprise. Құралдың өзі SSMS ішінде клиенттік құрылғыңызда жұмыс істейді, сондықтан сервер ресурстарына ол орындайтын бақылау сұраулары ғана әсер етеді.

2.2 Қажетті рұқсаттар

Әрекет мониторының дұрыс жұмыс істеуі үшін тиісті рұқсаттар маңызды. Тиісті құқықтарсыз сіз бос дисплейді көре аласыз немесе кіруге тыйым салынған қателерді аласыз.

2.2.1 СЕРВЕР КҮЙІН КӨРУ рұқсаты

The СЕРВЕР КҮЙІН КӨРУ рұқсат белсенділік мониторын пайдаланудың негізгі талабы болып табылады. Бұл сервер деңгейіндегі рұқсат барлық белсенді процестерді және оларға қатысты көрсеткіштерді көруге мүмкіндік береді.

Бұл рұқсатты беру үшін сервер әкімшісі келесі әрекеттерді орындай алады:

GRANT VIEW SERVER STATE TO [YourLoginName];

СЕРВЕР КҮЙІН КӨРСЕТУ функциясынсыз әрекет мониторы ашылуы мүмкін, бірақ оның ешбір тақтасында деректер көрсетілмейді.

2.2.2 Дерекқор деңгейіндегі рұқсаттар

Деректер файлы енгізу/шығару тақтасындағы ақпаратты көру үшін сізге қосымша рұқсаттар қажет. Атап айтқанда, сізде келесі комбинациялардың біреуі болуы керек:

  • ДЕРЕКТЕР БАЗЫН ҚҰРУ рұқсат немесе
  • КЕЗ КЕЛГЕН ДЕРЕКТЕР БАЗЫН ӨЗГЕРТУ рұқсат немесе
  • КЕЗ КЕЛГЕН АНЫҚТАМАЛАРДЫ ҚАРАУ рұқсат

Бұл рұқсаттарды біріктіру керек СЕРВЕР КҮЙІН КӨРУ Толық Activity Monitor функциясы үшін.

2.2.3 Рұқсат ақауларын жою

Егер Activity Monitor ашылса, бірақ ешқандай деректер көрсетпесе, рұқсаттар ең көп таралған себеп болып табылады. Кіруіңізге сервер деңгейінде VIEW SERVER STATE берілгенін тексеріңіз. Рұқсаттарыңызды келесі әрекеттерді орындау арқылы тексеруге болады:

SELECT * FROM fn_my_permissions(NULL, 'SERVER');

Рұқсат_атауы бағанында "СЕРВЕР КҮЙІН КӨРІУ" дегенді іздеңіз. Егер ол жоқ болса, рұқсат алу үшін дерекқор әкімшісіне хабарласыңыз.

2.3 SSMS жүйесінде белсенділік мониторын ашу жолы

SQL Server Management Studio жұмыс үрдісінің теңшелімдеріне негізделген икемділік беретін әрекет мониторын іске қосудың төрт түрлі әдісін ұсынады.

2.3.1 1-әдіс: Құралдар тақтасынан

Әрекет мониторын ашудың ең жылдам жолы - құралдар тақтасының белгішесін пайдалану:

  1. Өзіңізге қосылыңыз SQL Server мысалдағы SQL Server Менеджмент студиясы.
  2. Стандартты құралдар тақтасында Белсенділік мониторы белгішесін табыңыз (ол жасыл ойнату түймесі бар жолақ диаграммаға ұқсайды).
  3. Белсенділік мониторын іске қосу үшін белгішені басыңыз.

бастау SQL Server Тақта белгішесінен Белсенділік мониторы SQL Server Менеджмент студиясы.

Бұл әдіс SSMS жүйесінде жұмыс істеп жатқанда және сервер әрекетін жылдам тексеру қажет болғанда ең жылдам.

2.3.2 2-әдіс: Object Explorer бағдарламасынан

Сондай-ақ, Activity Monitor бағдарламасын тікелей Object Explorer бағдарламасынан іске қосуға болады:

  1. Object Explorer бағдарламасында табыңыз SQL Server қадағалағыңыз келетін мысал.
  2. Дана атын тінтуірдің оң жақ түймешігімен басыңыз.
  3. таңдау Әрекет мониторингі мәтінмәндік мәзірден.

бастау SQL Server Object Explorer ішіндегі дананы тінтуірдің оң жақ түймешігімен басу арқылы әрекет мониторы SQL Server Менеджмент студиясы.

Бұл әдіс бірнеше серверлерге қосылу кезінде пайдалы, себебі ол дұрыс дананы бақылап отырғаныңызды қамтамасыз етеді.

2.3.3 3-әдіс: Пернелер тіркесімін пайдалану

Пернетақтаға бағытталған пайдаланушылар үшін, SQL Server Management Studio арнайы таңбашаны ұсынады:

  1. SSMS белсенді терезе екеніне және данаға қосылғаныңызға көз жеткізіңіз.
  2. баспасөз Ctrl + Alt + A.
  3. Әрекет мониторы Object Explorer бағдарламасында ағымдағы таңдалған данаға ашылады.

Белсенділік мониторы Object Explorer бағдарламасында таңдаған сервер данасына қосылатынын ескеріңіз, сондықтан осы таңбашаны пайдаланбас бұрын дұрыс дананы таңдағаныңызға көз жеткізіңіз.

2.3.4 4-әдіс: Параметрлер мәзірінен (Іске қосу конфигурациясы)

Егер сіз Activity Monitor бағдарламасын жиі пайдалансаңыз, қолданбаны іске қосқан сайын SSMS бағдарламасын автоматты түрде іске қосу үшін конфигурациялай аласыз:

  1. In SQL Server Management Studio бөліміне өтіңіз Құралдар -> Опциялар.
  2. Параметрлер тілқатысу терезесінде кеңейтіңіз қоршаған орта, сосын таңдаңыз Жіберу.
  3. -дан Старт кезінде ашылмалы тізімнен таңдаңыз Object Explorer және Activity Monitor ашыңыз.
  4. таңдау OK.

Іске қосу конфигурациясын орнатыңыз SQL Server Белсенділік мониторы SQL Server Менеджмент студиясы.

Келесі жолы SSMS іске қосқанда және серверге қосылғанда, Activity Monitor Object Explorer бағдарламасымен бірге автоматты түрде ашылады.

3. Әрекет мониторының тақталарын түсіну

Белсенділік мониторы ақпаратты бес кеңейтілетін аумаққа ұйымдастырады, олардың әрқайсысы сервер әрекетіне әртүрлі перспектива береді. Әр тақтаның не көрсететінін түсіну тиімді ақауларды жою үшін өте маңызды.

3.1 Шолу аумағы

Шолу тақтасы денсаулық жағдайының жылдам суретін беретін нақты уақыттағы төрт графикті ұсынады SQL Server мысал. Бұл графиктер конфигурацияланатын аралықта жаңартылады және әдеттен тыс үлгілерді бір қарағанда анықтауға көмектеседі.

Шолу тақтасы ішіндегі SQL Server Әрекет мониторы.

3.1.1 % Процессор уақыты

Бұл график процессордың бос емес ағындарды орындауға жұмсайтын уақытының пайызын көрсетеді SQL Server барлық процессорлардағы мысал. Мән білдіреді SQL Serverбүкіл сервердің процессорды пайдалануы емес, процессорды пайдалану.

Егер процессордың жұмыс уақыты үнемі 100% немесе оған жақын болса, серверіңіз процессорға байланысты. Бұл тиімсіз сұраныстарды, индекстердің жоқтығын немесе аппараттық сыйымдылықтың жеткіліксіздігін көрсетуі мүмкін. Қай сұраныстардың процессорды ең көп тұтынатынын анықтау үшін «Соңғы қымбат сұраныстар» тақтасын пайдаланыңыз.

3.1.2 Күту тапсырмалары

Бұл көрсеткіш ресурстарды жалғастырмас бұрын шығарылуын күтетін тапсырмалардың санын көрсетеді. Тапсырмалар CPU, енгізу/шығару, жад немесе құлыптарды күтуі мүмкін.

Күту тапсырмаларының тұрақты жоғары саны ресурс қайшылығын көрсетеді. Ресурстарды күту тақтасы күтулерді тудыратын ресурстардың түрлері туралы қосымша мәліметтерді береді.

3.1.3 Деректер базасын енгізу/шығару (МБ/с)

Бұл график жад пен диск арасындағы мәліметтерді тасымалдау жылдамдығын көрсетеді. Ол секундына мегабайтпен өлшенетін оқу мен жазуды біріктіреді.

Дерекқор енгізу/шығаруындағы тітіркенулер үлкен кестені сканерлеуді, шамадан тыс тіркеу әрекетін немесе бақылау нүктесі әрекеттерін орындайтын сұрауларды көрсете алады. Деректер файлы енгізу/шығару тақтасы енгізу/шығару әрекетін дерекқор мен файл бойынша бөледі.

3.1.4 Пакеттік сұраныстар/сек

Бұл көрсеткіш санды білдіреді SQL Server секундына данаға алынған партиялар. Пакет бір мәлімдеме немесе бірге жіберілген бірнеше мәлімдеме болуы мүмкін.

Бұл мән сізге жалпы сервер әрекетінің сезімін береді. Қалыпты жұмыс уақытында пакеттік сұраулардың кенет төмендеуі қолданбаның қосылу мәселелерін немесе пайдаланушыға қатысты мәселелерді көрсетуі мүмкін.

3.1.5 Жаңарту аралықтарын орнату

Белсенділік мониторының деректерін жаңарту жиілігін теңшей аласыз:

  1. Шолу тақтасының кез келген жерін тінтуірдің оң жақ түймешігімен басыңыз.
  2. таңдау Жаңарту аралығы.
  3. Алдын ала анықталған мәндерден аралықты таңдаңыз: 1 секунд, 5 секунд, 10 секунд (әдепкі), 30 секунд, 1 минут немесе 1 сағат.

Жаңарту аралығын орнатыңыз SQL Server Әрекет мониторының шолу тақтасы.

Жаңарту аралықтарын 10 секундтан төмен орнату сервердегі бақылау шығындарын арттырады. Ауыр жүктемедегі өндіріс жүйелері үшін әсерді азайту үшін 30 секунд немесе одан да көп аралықтарды пайдалануды қарастырыңыз.

3.2 Процестер аумағы

Процестер тақтасында ағымдағы іске қосылған сеанстар туралы ақпаратты көрсетеді SQL Server мысал. Бұл аймақ кімнің не істеп жатқанын анықтау және блоктау мәселелерін анықтау үшін өте маңызды.

Процестер аумағы SQL Server Әрекет мониторы.

3.2.1 Процесс туралы ақпаратты түсіну

Процестер аумағындағы әрбір жол сервердегі белсенді сеансты білдіреді. Аймақ барлық дерекқорлардан және барлық пайдаланушылардан сеанстарды көрсетеді, бұл сізге сервер әрекетінің толық көрінісін береді.

Көрсетілетін ақпаратқа кіру аты, қолданба атауы, хост атауы, кірілетін дерекқор және ағымдағы пәрмен кіреді. Бұл дерекқор әрекетін белгілі бір пайдаланушылармен немесе қолданбалармен байланыстыруға көмектеседі.

3.2.2 Негізгі бағандар түсіндірілді

Негізгі бағандарды түсіну процесс ақпаратын тиімді түсіндіруге көмектеседі:

  • Сеанс идентификаторы: Әрбір қосылым үшін бірегей идентификатор. Жүйелік процестер теріс сеанс идентификаторларын пайдаланады.
  • Пайдаланушы процесі: Бұл пайдаланушы сеансы (Иә) немесе жүйелік процесс (Жоқ) екенін көрсетеді.
  • Кіру: The SQL Server сеанспен байланысты логин немесе Windows тіркелгісі.
  • Дерекқор: Сеанс үшін ағымдағы дерекқор мәтінмәні.
  • Тапсырма күйі: Сеанстың қазіргі уақытта не істеп жатқанын көрсетеді (ЖҮРГІЗУ, ТОҚТАТУ, ҰЙЫҚТАУ, т.б.).
  • Command: Орындалатын пәрмен түрі (SELECT, INSERT, UPDATE, т.б.).
  • қолдану: Қосылымды жасаған қолданбаның аты.
  • Күту уақыты: Сеанс қанша уақыт (миллисекундпен) ресурстарды күтті.
  • Күту түрі: Сеанс күтетін ресурстың нақты түрі.
  • CPU уақыты: Қосылғаннан бері осы сеанс тұтынатын жалпы CPU уақыты.
  • Жадты пайдалану: Қазіргі уақытта сеансқа бөлінген жад көлемі (КБ).

3.2.3 Сүзгілеу және сұрыптау процестері

Процестер тақтасы сәйкес сеанстарға назар аударуға көмектесетін күшті сүзу мүмкіндіктерін қамтиды:

  1. Кез келген баған тақырыбындағы ашылмалы көрсеткіні басыңыз.
  2. Сүзгі сол баған үшін қолжетімді мәндерді көрсетеді, соның ішінде Барлық, Бос орындар, және Бос еместер.
  3. Дисплейді тек сол сеанстарға сүзу үшін арнайы мәндерді таңдаңыз.

Процестерді сүзгіден өткізіңіз SQL Server Әрекет мониторы.

Мысалы, сүзуге болады Тапсырма күйі тек ЖҰМЫСТЫ сеанстарды немесе сүзгіні көрсету үшін дерекқор белгілі бір дерекқорға қарсы әрекетті көру.

Сондай-ақ, тақырыпты басу арқылы кез келген баған бойынша сұрыптауға болады. Өсу реті үшін бір рет басыңыз, кему реті үшін екі рет басыңыз.

Процестерді сұрыптаңыз SQL Server Әрекет мониторы.

3.2.4 Бұғаттау және бұғатталған сеанстарды анықтау

Процестер тақтасы бір сеанс басқалардың жалғастырылуын болдырмайтын блоктау сценарийлерін анықтауға көмектеседі:

  • Бұғаттаған: Осы сеансты блоктайтын сеанстың сеанс идентификаторын көрсетеді. Егер бұл баған мәнді қамтыса, сеанс басқа сеанс ұстайтын құлыптауды күтеді.
  • Бас блокаторы: Бұл сеанс басқаларды бұғаттаса, бірақ өзі блокталмаған болса, «1» көрсетеді. Бұл блоктау тізбегінің негізгі себебі.

Блоктауды және бұғатталған процестерді ішінде көрсету SQL Server Әрекет мониторы.

Бұғаттау мәселесін зерттеу үшін алдымен бас блокаторын анықтаңыз (басты блоктаушы бағанында "1" белгісімен белгіленген сеанс), содан кейін оның не істеп жатқанын тексеріп, оны аяқтауға немесе тоқтатуға рұқсат беруді шешіңіз.

3.2.5 Процесс әрекеттері (өлтіру, мәліметтер, бақылау)

Белсенділік мониторы жеке сеанстар бойынша әрекеттерді орындауға мүмкіндік береді:

  1. Процестер аумағындағы кез келген сеансты тінтуірдің оң жақ түймешігімен басыңыз.
  2. Сіз бірнеше опцияны көресіз:
    • Толығырақ: Осы сеанс орындаған соңғы пәрменді көрсетеді.
    • Өлтіру процесі: Сеансты аяқтайды (сақтықпен пайдаланыңыз).
    • Іздеу процесі SQL Server Профиль жасаушы: Басталады SQL Server Профессор және осы сеанстағы әрекетті ғана көрсету үшін автоматты түрде сүзеді.

ішіндегі процестер бойынша әрекеттерді орындаңыз SQL Server Әрекет мониторы.

Мәліметтер опциясы пәрмен мәтінін көрсетеді, бірақ бұл соңғы пәрмен орындалды — ол әлі іске қосылмауы мүмкін. Бақылау опциясы сеанс орындалып жатқан пәрмендердің толық тізбегін көру қажет болғанда әсіресе пайдалы.

3.3 Ресурстарды күту аумағы

«Ресурс күтулері» тақтасында күту статистикасы жинақталған, онда қандай ресурстар сеанстары жиі күтілетіні көрсетілген. Бұл ақпарат өнімділік кедергілерін диагностикалау үшін өте маңызды.

Ресурстарды күту аймағы SQL Server Әрекет мониторы.

3.3.1 Күту статистикасын түсіну

Қашан SQL Server ресурс сұрауын бірден бере алмайды (мысалы, құлып, процессор уақыты немесе жад), сұрау тапсырмасы күту күйіне өтеді. Күту статистикасы осы күту кезеңдерін қадағалайды және сервер жұмыс істеуге емес, күтуге уақытын қайда жұмсайтынын түсінуге көмектеседі.

Ресурстарды күту аумағы sys.dm_os_wait_stats және sys.dm_exec_requests сияқты жүйелік динамикалық басқару көріністерінен деректерді жинайды. Әрбір жаңарту интервалында ол ағымдағы және алдыңғы сурет арасындағы айырмашылықты есептеп, әрбір күту түрі үшін жинақтау жылдамдығын көрсетеді.

3.3.2 Күту санаттары

Әрекет мониторы түсіндіруді жеңілдету үшін жүздеген жеке күту түрлерін кең санаттарға топтайды:

  • CPU: Процессордың қол жетімді болуын күтетін тапсырмалар.
  • Буферлік ысырма: Жадтағы деректер беттеріне қол жеткізуді қорғайтын қысқа мерзімді синхрондау нысандарын күтеді. Бұл санат бет ысырмасын күтулерді қамтиды (PAGELATCH_*).
  • Бекіту: Басқа сеанстарға қажет құлыптарды ұстап тұру сеанстарынан туындаған күту.
  • Жад: Сұрыптау және хэштеу сияқты операцияларға қажет жад гранттарын күтеді.
  • Желілік енгізу/шығару: Клиенттерге деректерді жіберуді немесе деректерді алуды күтеді.
  • SQL CLR: Common Language Runtime орындалуына қатысты күтулер.

Бұл топтау көріністі жеңілдетсе де, маңызды мәліметтерді жасырады. Мысалы, «Буфер ысырмасы» өнімділікке әртүрлі әсер ететін PAGELATCH_SH, PAGELATCH_UP және PAGELATCH_EX күтулерін біріктіруі мүмкін.

3.3.3 Күту уақыты мен күту тапсырмаларын түсіндіру

Ресурстарды күту тақтасы әрбір күту санаты үшін екі негізгі көрсеткішті көрсетеді:

  • Жиынтық күту уақыты (мс): Осы күту санаты үшін ағымдағы жаңарту аралығы кезінде жинақталған жалпы миллисекундтар.
  • Күту тапсырмалары: Осы санаттағы ресурстарды күтіп тұрған тапсырмалар саны.

Күту уақыты мәні ерекше қызықты. Егер сізде 10 секундтық жаңарту аралығы болса және санат үшін 20 000 мс күту уақытын көрсеңіз, бұл бірнеше қатар күтуді көрсетеді (20 000 мс / 10 000 мс = аралықтағы 2 қатар күтудің орташа мәні).

3.3.4 Өнімділік кедергілерін анықтау

Серверіңіздің қай жерде ең көп күтіп отырғанын анықтау үшін Ресурс күту тақтасын пайдаланыңыз:

  1. Ресурстарды күту аумағын кеңейтіңіз.
  2. Ең көп күту уақытын жинақтайтын күту санаттарын қадағалаңыз.
  3. Бойынша сұрыптау Жиынтық күту уақыты қай ресурстар ең шектеулі екенін көру үшін.

Өнімділік кедергісін табу үшін Ресурс күту аймағында жиынтық күту уақыты бойынша сұрыптаңыз.

Жоғары буферлі ысырманы күту жиі жадтағы деректер беттері үшін қайшылықты көрсетеді, бұл енгізу/шығару кедергілерін немесе tempdb қайшылығын көрсетуі мүмкін. High Lock күту блоктау мәселелерін көрсетеді. Жоғары жадты күту сұрау операциялары үшін жеткіліксіз жад гранттарын ұсынады.

3.4 Деректер файлының енгізу/шығару тақтасы

Деректер файлының енгізу/шығару тақтасы сервердегі әрбір дерекқор файлы үшін диск әрекетін көрсетеді, бұл енгізу/шығару кедергілерін анықтауға және дискіні пайдалану үлгілерін түсінуге көмектеседі.

Деректер файлының енгізу/шығару тақтасы SQL Server Әрекет мониторы.

3.4.1 Енгізу/шығару көрсеткіштерін түсіну

Деректер файлының енгізу/шығару тақтасы әрбір дерекқор файлы үшін бірнеше көрсеткіштерді көрсетеді:

  • Дерекқор: Мәліметтер қорының атауы.
  • Файл түрі: Деректер (кестелер мен индекстерді қоса) немесе Журнал (транзакция журналы).
  • Логикалық атау: ішінде анықталған логикалық файл атауы SQL Server.
  • МБ/сек Оқу: Осы файлдан оқылатын деректер жылдамдығы.
  • МБ/сек Жазылған: Осы файлға жазылатын деректер жылдамдығы.
  • Жауап беру уақыты (мс): Осы файлдағы енгізу/шығару операцияларының орташа жауап уақыты.

Бұл көрсеткіштер шолу аумағымен бірдей аралықта жаңартылып, диск әрекетін нақты уақытта көруге мүмкіндік береді.

3.4.2 Енгізу/шығару кедергілерін анықтау

Енгізу/шығару өнімділігі мәселелерін көрсететін мына үлгілерді қараңыз:

  • Жоғары жауап беру уақыты: 15-20 мс жоғары жауап беру уақыттары баяу дискілік ішкі жүйелерді ұсынады. 50 мс асатын жауап беру уақыттары елеулі енгізу/шығару кедергілерін көрсетеді.
  • Теңгерімсіз жүктеме: Бір деректер файлы бір дерекқордағы басқаларға қарағанда айтарлықтай жоғары енгізу/шығару жылдамдығын көрсетсе, жүктемені тарату үшін қосымша файлдарды қосу пайдалы болуы мүмкін.
  • Шамадан тыс Tempdb әрекеті: Tempdb файлдарындағы жоғары енгізу/шығару жылдамдығы жиі үлкен аралық нәтиже жиындарын жасайтын немесе тиімсіз орындау жоспарларын пайдаланатын сұрауларды көрсетеді.

3.4.3 Деректер қорының файлын талдау

Дерекқорлардың диск ресурстарын қалай пайдаланатынын түсіну үшін Деректер файлы енгізу/шығару тақтасын пайдаланыңыз:

  1. Деректер файлы енгізу/шығару тақтасын кеңейтіңіз.
  2. Бойынша сұрыптау МБ/сек Оқу or МБ/сек Жазылған ең белсенді файлдарды анықтау үшін.
  3. Тұрақты жоғары белсенділік немесе ұзақ жауап беру уақыты бар кез келген файлдарды ескеріңіз.
  4. Енгізу/шығару жүктемесін басқаратын сұрауларды анықтау үшін осы ақпаратты соңғы қымбат сұраулар тақтасымен салыстырыңыз.

Деректер файлының кіріс/шығыс тақтасындағы ең белсенді файлдарды анықтау үшін Оқылған немесе Жазылған бойынша сұрыптаңыз.

3.5 Соңғы қымбат сұраулар аумағы

«Соңғы қымбат сұраулар» тақтасы қолданбаның өнімділік мәселелерін шешуге арналған ең құнды тақта болып табылады. Онда сервер ресурстарын айтарлықтай тұтынатын сұраулар көрсетіледі, бұл сізге оңтайландыру мүмкіндіктерін анықтауға көмектеседі.

Соңғы қымбат сұраулар тақтасы SQL Server Әрекет мониторы.

3.5.1 Сұрау метрикасын түсіну

Әрекет мониторы әрбір қымбат сұрау үшін бірнеше көрсеткіштерді көрсетеді:

  • Орындау/мин: Соңғы минутта сұрау қанша рет орындалды.
  • Орталық процессор (мс/сек): Бұл сұрау секундына тұтынылатын CPU уақыты.
  • Физикалық оқулар/сек: Бұл сұрау үшін физикалық дискінің секундына оқылатын саны.
  • Логикалық жазу/сек: Секундына логикалық жазулар саны (кэш буферіне).
  • Логикалық оқулар/сек: Секундына логикалық оқулар саны (буфер кэшінен).
  • Орташа ұзақтық (мс): Осы сұраудың орташа орындалу уақыты.
  • Жоспар саны: Осы сұрау үшін кэштегі орындау жоспарларының саны.

Бұл көрсеткіштер қай сұраулардың қымбат екенін ғана емес, сонымен қатар түсінуге көмектеседі неге олар қымбат және қаншалықты жиі жұмыс істейді.

3.5.2 Сұрыптау опциялары

Мәселелердің әртүрлі түрлерін табу үшін соңғы қымбат сұраулар тақтасын әртүрлі көрсеткіштер бойынша сұрыптауға болады:

  1. Сол көрсеткіш бойынша сұрыптау үшін кез келген баған тақырыбын басыңыз.
  2. Жалпы сұрыптау стратегияларына мыналар жатады:
    • CPU бойынша сұрыптау: Процессордың ең көп уақытын алатын сұраныстарды табыңыз.
    • Орындаулар/мин бойынша сұрыптау: Шамадан тыс жиі орындалатын сұрауларды анықтаңыз.
    • Физикалық оқулар бойынша сұрыптау: Дискінің ең көп енгізу/шығаруын тудыратын сұраныстарды табыңыз.
    • Орташа ұзақтығы бойынша сұрыптау: Ұзақ орындалатын сұрауларды табыңыз.

Өнімділік мәселесін шешкенде, әртүрлі перспективаларды алу үшін бірнеше бағандар бойынша сұрыптап көріңіз. Орташа CPU пайдаланатын, бірақ минутына өте жоғары орындалатын сұрау сіздің нақты мәселеңіз болуы мүмкін.

3.5.3 Сұрау мәтінін қарау

Қымбат сұраныстың артындағы нақты SQL мәлімдемесін көру үшін:

  1. Соңғы қымбат сұраныстар тақтасындағы сұрау жолын тінтуірдің оң жақ түймешігімен басыңыз.
  2. таңдау Сұрау мәтінін өңдеу.
    Соңғы қымбат сұраулар аумағында сұрау мәтінін өңдеу.
  3. Толық SQL мәлімдемесін көрсететін жаңа сұрау терезесі ашылады.
    Соңғы қымбат сұраулар аумағында "Сұрау мәтінін өңдеу" параметрін таңдағаннан кейін жаңа сұрау терезесі.

Бұл сұрау логикасын тексеруге және ықтимал оңтайландыру мүмкіндіктерін анықтауға мүмкіндік береді. Содан кейін өзгертілген нұсқаларды тексеру үшін сұрау мәтінін көшіруге болады.

3.5.4 Орындау жоспарларын талдау

Орындау жоспарлары сізге қалай екенін көрсетеді SQL Server жоқ индекстер немесе сәйкес емес біріктіру түрлері сияқты тиімсіздіктерді анықтайтын сұрауды орындайды:

  1. Соңғы қымбат сұраныстар тақтасындағы сұрау жолын тінтуірдің оң жақ түймешігімен басыңыз.
  2. таңдау Орындау жоспарын көрсету.
    Соңғы қымбат сұраулар аумағында Орындау жоспарын көрсету.
  3. SQL Server Management Studio сұраудың орындалу жолының графикалық көрінісін көрсетеді.
    Жаңа терезеде сұрауды орындау жоспары.

Сұрау құнының үлкен пайызын тұтынатын операцияларды, статистиканың немесе индекстердің жоқтығы туралы ескертулерді және күтпеген кесте сканерлеу операцияларын іздеңіз. Бұлар көбінесе оңтайландыру жұмыстары қайда бағытталуы керектігін көрсетеді.

3.5.5 Проблемалық сұрауларды анықтау

Соңғы қымбат сұраулар тақтасында осы үлгілерді қараңыз:

  • Шамадан тыс орындалулар: Минутына мыңдаған рет орындалатын сұрау қолданба коды дерекқорды цикл ішінде шақыратын N+1 сұрау мәселесін көрсетуі мүмкін.
  • Жоғары физикалық көрсеткіштер: Физикалық оқу жылдамдығы жоғары сұраулар дискіге жиі соғылып, жетіспейтін индекстерді немесе нашар жазылған сұрауларды ұсынады.
  • Ұзақтығы аз жоғары процессор: Жиынтықта көп процессорды тұтынатын көптеген жылдам сұраулар сервер жұмысына бірнеше баяу сұраулар сияқты әсер етуі мүмкін.
  • Бірнеше жоспар саны: Көптеген орындау жоспарлары бар сұраулар параметрді анықтау мәселелерінен немесе жоспар кэшінің кебуіне себеп болатын параметрленбеген сұраулардан зардап шегуі мүмкін.

4. Өнімділік ақаулықтарын жою үшін Әрекет мониторын пайдалану

Белсенділік мониторы өнімділік мәселелерін диагностикалау және шешу үшін жүйелі түрде пайдаланған кезде шынымен жарқырайды. Бұл бөлім ақауларды жоюдың жалпы сценарийлерін және оларға қалай қарау керектігін қамтиды.

4.1 Шамадан тыс сұрауларды орындау диагностикасы

Ең көп таралған өнімділік мәселелерінің бірі - сұраныстардың қажет болғаннан әлдеқайда жиі орындалуы, көбінесе қолданбаны жобалау мәселелеріне байланысты.

4.1.1 Қайталанатын сұрауларды анықтау

Тым жиі орындалатын сұрауларды анықтау үшін:

  1. Әрекет мониторын ашып, кеңейтіңіз Соңғы қымбат сұраулар тақтасы.
  2. Бойынша сұрыптау Орындау/мин (минутына орындалу саны).
  3. Негізсіз жоғары болып көрінетін орындалу саны бар сұрауларды жоғарыдан іздеңіз.
  4. Күдікті сұрауды тінтуірдің оң жақ түймешігімен басып, таңдаңыз Сұрау мәтінін өңдеу SQL мәлімдемесін тексеру үшін.

Мысалы, егер сіз қарапайым SELECT операторының минутына 37 000 рет орындалатынын көрсеңіз, қолданбаның бұл сұранысты шынымен соншалықты жиі шақыруы керек пе деген сұрақ туындайды. Көптеген сұраныстар минутына бірнеше мыңнан астам рет орындалатын болса, олар тергеуді қажет етеді.

4.1.2 Түбірлік себептерді талдау

Шамадан тыс сұрауларды орындау әдетте мына мәселелерден туындайды:

  • N+1 сұрау мәселесі: Қолданба коды элементтер тізімін шығарып алады, содан кейін қатысты деректерді алу үшін әрбір элемент үшін бөлек сұрауды орындайды. Бұл N қосымша сұрау жасайды, мұнда N - элементтер саны.
  • Кэштеу жоқ: Қолданба дерекқорды қолданба жадында кэштеудің орнына сирек өзгеретін деректерді сұрайды.
  • Дауыс беру циклдері: Код өзгерту туралы хабарландыруларды немесе хабарлама кезектерін пайдаланудың орнына күй өзгерістерін тексеру үшін дерекқорды қайталап сұрайды.
  • ORM тиімсіздігі: Entity Framework және ұқсас құралдар кейде әзірлеушілер кодының SQL тіліне қалай аударылатынын түсінбеген кезде тиімсіз сұрау үлгілерін жасайды.

Түбірлік себепті анықтау үшін сұрауды қолданба кодына дейін қадағалаңыз. ескеріңіз қолдану және Кіру сұрау орындалған кезде Процестер аумағындағы бағандар. Сондай-ақ процесті тінтуірдің оң жақ түймешігімен басып, таңдауға болады Іздеу процесі SQL Server Профессор қоңырау үлгісін көру үшін.

4.1.3 Шешімдер және үздік тәжірибелер

Шамадан тыс сұраулардың орындалуын анықтағаннан кейін мына шешімдерді қарастырыңыз:

  • Пакеттік өңдеу: Циклдегі бөлек сұрауларды орындаудың орнына біріктіру немесе IN сөйлемдерін пайдаланып бір сұраудағы бірнеше элементтерді алу үшін қолданба кодын өзгертіңіз.
  • Нәтижені кэштеу: Жиі қол жетімді кэш, сәйкес жарамдылық мерзімі бар қолданба жадындағы деректерді сирек өзгертеді.
  • Ыңғайлы жүктеу: Қатысты деректерді азырақ, тиімдірек сұрауларда алатын ынталы жүктеу стратегияларын пайдалану үшін ORMs конфигурациялаңыз.
  • Сұраныс параметрі: Сұраулардың мәндерді біріктіру орнына параметрлерді пайдалануын қамтамасыз етіңіз, бұл жоспар кэшін қайта пайдалануды жақсартады және жинақтау шығындарын азайтады.

4.2 Бұғаттау мәселелерін зерттеу

Бір сеанс басқа сеанстарды жалғастыруға кедергі келтіретін құлыптарды ұстаған кезде бұғаттау орын алады. Бұл қолданбаның жауап беру уақытының баяу және көңілсіз пайдаланушылар ретінде көрінеді.

4.2.1 Блоктау тізбектерін анықтау

Бұғаттауды анықтау және талдау үшін:

  1. Әрекет мониторын ашып, кеңейтіңіз Процестер тақтасы.
  2. ішінде мәндері бар сеанстарды іздеңіз Бұғаттаған баған — бұл басқа сеанстар ұстайтын құлыптарды күтуде.
  3. ішінде '1' бар сеанстарды табыңыз Бас блокаторы баған — бұл тізбектерді блоктаудың негізгі себебі.
  4. Назар аударыңыз Сеанс идентификаторы бас блокаторының.
  5. Head blocker сеансын тінтуірдің оң жақ түймешігімен басып, таңдаңыз Егжей қандай пәрменді орындап жатқанын көру үшін.

Блоктау тізбегін түсіну өте маңызды. Басты блоктаушы - төменгі ағындағы бұғатталған сеанстар емес, зерттеу қажет сеанс.

4.2.2 Құлып түрлерін түсіну

The Күту түрі Процестер аумағындағы баған блокталған сеанстардың қандай түрін күтіп тұрғанын көрсетеді:

  • LCK_M_X: Әдетте ЖАҢАРТУ, ЖОЮ немесе INSERT әрекеттерінен туындаған ерекше құлыптау күту.
  • LCK_M_S: Ортақ құлыпты күту, әдетте эксклюзивті құлыптардың босатылуын күтетін ТАҢДАУ мәлімдемелері.
  • LCK_M_U: Жаңарту құлпын күту, жаңартулар кезінде қолданылатын аралық құлып түрі.
  • LCK_M_IX: Бетті немесе жол деңгейіндегі құлыптау дауын көрсететін эксклюзивті құлыптауды күту ниеті.

The Күту ресурсы баған қай дерекқор нысаны құлыпталып жатқанын көрсетеді, бұл қай кестенің немесе индекстің қайшылыққа қатысы барын түсінуге көмектеседі.

4.2.3 Бұғаттау мәселелерін шешу

Блоктау сеансын және оның не істеп жатқанын анықтағаннан кейін сізде бірнеше опция бар:

  1. Аяқтауды күтіңіз: Егер бас блокаторы жақын арада аяқталатын заңды сұрауды орындаса, оның табиғи түрде аяқталуына мүмкіндік берген дұрыс.
  2. Сеансты жою: Егер бас блокаторы тұрып қалса немесе тоқтатылуы керек сұрау орындалса:
    • Процестер аумағында сеансты тінтуірдің оң жақ түймешігімен басыңыз.
    • таңдау Өлту процесі.
    • Диалогтық терезеде әрекетті растаңыз.
  3. Сұрауларды оңтайландыру: Егер блоктау бірдей сұраулармен қайталанса, құлыптау ұзақтығын азайту үшін оларды оңтайландырыңыз.
  4. Оқшаулау деңгейлерін реттеу: Оқуды қажет ететін ауыр жұмыс жүктемелерінде блоктауды азайту үшін READ COMMITTED SNAPSHOT IZOLATION пайдалануды қарастырыңыз.
  5. Индексті баптау: Сұрауларды жылдамдату үшін индекстерді қосыңыз, олардың құлыптарды сақтау ұзақтығын азайтыңыз.

4.3 Жоғары процессорды пайдалануды талдау

Шолу тақтасы процессор уақытын дәйекті түрде 100% немесе оған жақын көрсеткенде, қандай сұраулар жауапты екенін анықтап, оларды оңтайландыруға болатынын анықтау керек.

4.3.1 Орталық процессорды қажет ететін сұраныстарды анықтау

Шамадан тыс процессорды тұтынатын сұрауларды табу үшін:

  1. Ашыңыз Соңғы қымбат сұраулар тақтасы.
  2. Бойынша сұрыптау Орталық процессор (мс/сек) CPU уақытын ең көп пайдаланатын сұрауларды көрсету үшін.
  3. Тізімдегі жоғарғы сұрауларды тексеріңіз.
  4. Жоғары CPU сұрауларын тінтуірдің оң жақ түймешігімен басып, таңдаңыз Сұрау мәтінін өңдеу SQL мәлімдемесін көру үшін.
  5. таңдау Орындау жоспарын көрсету сұраудың қалай орындалатынын түсіну үшін.

Жеке сұрау процессорын пайдалану ғана емес, сонымен қатар Орындау/мин баған. Орындауда орташа процессорды пайдаланатын, бірақ минутына мыңдаған рет орындалатын сұрау сіздің ең үлкен CPU тұтынушы болуы мүмкін.

4.3.2 Сұрауларды оңтайландыру әдістері

Орталық процессорды тұтынуды азайтудың жалпы тәсілдеріне мыналар жатады:

  • Жетіспейтін индекстерді қосу: Индекс іздеулері кестені сканерлеуге қарағанда әлдеқайда аз CPU пайдаланады. Орындау жоспарларында жетіспейтін индекс ұсыныстарын іздеңіз.
  • Тиімсіз сұрауларды қайта жазу: Курсорларды жиынға негізделген әрекеттермен ауыстырыңыз, WHERE сөйлемдеріндегі қажетсіз функцияларды жойыңыз және артық біріктірулерді жойыңыз.
  • Жаңарту статистикасы: Ескірген статистика себеп SQL Server тиімсіз орындау жоспарларын таңдау. Зардап шеккен кестелерде UPDATE STATISTICS іске қосыңыз.
  • Деректер көлемін азайту: Деректерді ертерек сүзу үшін WHERE сөйлемдерін қосыңыз, беттеу үшін TOP немесе OFFSET/FETCH пайдаланыңыз және SELECT * қолданбаңыз.
  • Параметрлерді анықтауды түзету: Параметрлерді иіскеу ақаулықтарды тудырғанда, OPTION (ҚАЙТА КОМПИЛЬЯЛАУ), сұрау туралы кеңестер немесе жоспарлау нұсқауларын пайдаланыңыз.

4.4 Жад мәселелерін зерттеу

Жад қысымы сұраулардың дискіге төгілуіне әкелуі мүмкін, бұл өнімділікті айтарлықтай төмендетеді. Белсенділік мониторы жадты көп қажет ететін операцияларды анықтауға көмектеседі.

4.4.1 Жад метрикасын түсіну

The Жадты пайдалану Процестер аумағындағы баған әрбір сеансқа килобайтпен бөлінген жадты көрсетеді. Бір сеанстағы жадты жоғары пайдалану жиі көрсетеді:

  • Бастапқыда берілген жадқа сыймайтын үлкен сұрыптау немесе хэш операциялары
  • Үлкен нәтижелер жиынын алатын сұраулар
  • Орындау жоспарының операторларының көптеген көшірмелерін жасайтын шамадан тыс параллелизм
  • CLR сақталған процедураларда немесе функцияларда жадтың ағуы

Ресурстарды күту аумағы сұраулар жеткілікті жад гранттарын ала алмаған кезде Жад күтулерін көрсетуі мүмкін және жад қолжетімді болғанша күту керек.

4.4.2 Жадты көп қажет ететін сұраныстарды анықтау

Жад қысымын тудыратын сұрауларды табу үшін:

  1. Ішінде Процестер тақта, сұрыптау Жадты пайдалану ең көп жадты тұтынатын сеанстарды көру үшін.
  2. Жадты көп пайдаланатын сеанстарды тінтуірдің оң жақ түймешігімен басып, таңдаңыз Егжей олардың сұрауларын көру үшін.
  3. Ішінде Соңғы қымбат сұраулар тақтасында жоғары сұрауларды іздеңіз Логикалық оқулар or Логикалық жазулар, өйткені олар көбінесе жадты пайдаланумен байланысты.
  4. Жад гранттарын пайдаланатын Sort және Hash Match операторларының орындау жоспарларын тексеріңіз.

Орындау жоспарларында немесе төгілу туралы ескертулерде «Жадты беру» ескертулерін көрсететін сұраулар жад қысымының мәселелерін көрсетеді.

4.5 Қолданбаның өнімділігі мәселелерін анықтау

Пайдаланушылар қолданбаның баяу жауап беру уақытын хабарлағанда, Activity Monitor дерекқордың кедергі екенін анықтауға көмектеседі.

4.5.1 Әрекет мониторын қолданба мәселелерімен салыстыру

Қолданбаның баяулығын зерттеу үшін:

  1. Пайдаланушылар проблемаларды және әсер еткен қолданбаларды хабарлаудың нақты уақытын ескеріңіз.
  2. Әрекет мониторын ашып, тексеріңіз қайта қарау сол кездегі ресурс өсіміне арналған тақта.
  3. Ішінде Процестер тақта, сүзгі бойынша қолдану тек зардап шеккен қолданбадағы қосылымдарды көрсету.
  4. Жоғарыдан іздеңіз Күту уақыты дерекқордың кешігуін көрсететін мәндер.
  5. тексеріңіз Соңғы қымбат сұраулар маңызды ресурстарды тұтынатын қолданбаның сұрауларына арналған аумақ.

Пайдаланушылар баяулау кезінде дерекқор ерекше әрекетті көрсетпесе, мәселе қолданба кодында, желінің кешігуінде немесе клиенттің өнімділігінде болуы мүмкін.

4.5.2 Тиімсіз қолданба үлгілерін анықтау

Белсенділік мониторы қолданба дизайнындағы бірнеше қарсы үлгілерді көрсетеді:

  • Әңгімелесу қолданбалары: Азырақ, тиімдірек сұраулардың орнына көптеген шағын сұраулар. Соңғы қымбат сұраулардағы жоғары қосылым саны және көптеген қарапайым сұраулар арқылы анықталған.
  • N+1 сұраулары: Қатысты деректер үшін бір сұраудан кейін N қосымша сұрау. Минутына өте жоғары орындалатын қарапайым сұрау ретінде көрсетеді.
  • Үлкен нәтиже жинақтары: Қажет болғаннан әлдеқайда көп деректерді алатын қолданбалар. Жоғарыдан іздеңіз Логикалық оқулар қарапайым SELECT * сұрауларымен біріктірілген.
  • Жетіспейтін күту уақыты: Пәрмен күту уақытын орнатпайтын қолданбалар қосылымдарды шексіз ашық қалдыруы мүмкін, олар Процестер аумағында ұзақ жұмыс істейтін сеанстар ретінде көрінеді.

5. Балама әдістер: T-SQL арқылы белсенділік мониторының деректерін алу

Белсенділік мониторы ыңғайлы графикалық интерфейсті қамтамасыз еткенімен, кейде сізге баламалы ақпаратты бағдарламалық жолмен алу немесе пайдаланушы бақылау шешімдерін жасау қажет.

5.1 Динамикалық басқару көріністерін (DMV) пайдалану

SQL Server Әрекет туралы ақпаратты динамикалық басқару көріністері арқылы көрсетеді, бұл әрекетті монитор сахна артында сұрайды.

5.1.1 Әрекетті бақылауға арналған негізгі DMVs

Activity Monitor функциясын репликациялауға арналған ең маңызды DMV-лерге мыналар жатады:

  • sys.dm_exec_requests: Қазіргі уақытта CPU, енгізу/шығару және күту ақпаратымен орындалатын сұрауларды көрсетеді.
  • sys.dm_exec_sessions: Кіру аты, хост атауы және бағдарлама атауы сияқты сеанс деңгейіндегі ақпаратты қамтиды.
  • sys.dm_os_wait_stats: Бүкіл данаға жинақталған күту статистикасын береді.
  • sys.dm_exec_query_stats: Кэштелген сұраулар үшін жиынтық өнімділік статистикасын қамтиды.
  • sys.dm_io_virtual_file_stats: Деректер мен журнал файлдары үшін енгізу/шығару статистикасын қайтарады.
  • sys.dm_exec_sql_text: Берілген sql_handle немесе plan_handle үшін SQL мәтінін шығарады.
  • sys.dm_exec_query_plan: Кэштелген сұрау үшін орындау жоспарын қайтарады.

5.1.2 Процесс ақпаратына арналған үлгі сұраулар

Процестер тақтасының функционалдығын қайталау үшін сұрауға болады:

SELECT 
    s.session_id AS [Session ID],
    CASE WHEN s.is_user_process = 1 THEN 'Yes' ELSE 'No' END AS [User Process],
    s.login_name AS [Login],
    ISNULL(CAST(r.blocking_session_id AS VARCHAR), '') AS [Blocked By],
    CASE 
        WHEN r2.session_id IS NOT NULL 
        AND (r.blocking_session_id = 0 OR r.session_id IS NULL) 
        THEN '1' 
        ELSE '' 
    END AS [Head Blocker],
    ISNULL(DB_NAME(r.database_id), '') AS [Database],
    ISNULL(t.task_state, '') AS [Task State],
    ISNULL(r.command, '') AS [Command],
    r.cpu_time AS [CPU Time],
    r.total_elapsed_time AS [Elapsed Time],
    r.wait_time AS [Wait Time],
    r.wait_type AS [Wait Type],
    s.memory_usage * 8 AS [Memory Use (KB)],
    s.host_name AS [Host Name],
    s.program_name AS [Application]
FROM sys.dm_exec_sessions s
LEFT JOIN sys.dm_exec_requests r ON s.session_id = r.session_id
LEFT JOIN sys.dm_exec_requests r2 ON r.session_id = r2.blocking_session_id
LEFT JOIN sys.dm_os_tasks t ON r.session_id = t.session_id
WHERE s.session_id != @@SPID
ORDER BY s.session_id;

5.1.3 Күту статистикасы үшін үлгі сұраулар

Ресурстарды күту аумағына ұқсас күту статистикасын көру үшін:

SELECT TOP 10
    wait_type AS [Wait Type],
    wait_time_ms / 1000.0 AS [Wait Time (sec)],
    waiting_tasks_count AS [Waiting Tasks],
    wait_time_ms / NULLIF(waiting_tasks_count, 0) AS [Avg Wait Time (ms)]
FROM sys.dm_os_wait_stats
WHERE wait_type NOT LIKE '%SLEEP%'
    AND wait_type NOT LIKE '%IDLE%'
    AND wait_type NOT LIKE '%QUEUE%'
ORDER BY wait_time_ms DESC;

5.2 sp_WhoIsActive пайдалану

sp_WhoIsActive – бір нәтиже жиынындағы Әрекет мониторына қарағанда егжей-тегжейлі ақпарат беретін қауымдастық жасаған қуатты сақталған процедура.

5.2.1 sp_WhoIsActive орнату

sp_WhoIsActive орнату үшін:

  1. Соңғы нұсқасын жүктеп алыңыз http://whoisactive.com.
  2. Жүктеп алу процедура анықтамасын қамтитын SQL сценарийі болып табылады.
  3. Скриптті ашыңыз SQL Server Менеджмент студиясы.
  4. Өзіңізге қосылыңыз SQL Server мысалы.
  5. Негізгі дерекқорда процедураны жасау үшін сценарийді орындаңыз.
  6. Сәйкес пайдаланушыларға орындау рұқсаттарын беріңіз.

sp_WhoIsActive мастерде орнатылғандықтан, оған кез келген дерекқор контекстінен қол жеткізуге болады.

5.2.2 Негізгі қолдану мысалдары

sp_WhoIsActive пайдаланудың ең қарапайым жолы:

EXEC sp_WhoIsActive;

Бұл барлық белсенді сеанстарды сұрауларымен, күту түрлерімен, блоктау ақпаратымен және ресурстарды пайдаланумен көрсететін нәтижелер жинағын қайтарады.

Осы кезеңдегі белсенділікті көрсететін 10 секундтық үлгі үшін:

EXEC sp_WhoIsActive @delta_interval = 10;

Бұл CPU сияқты көрсеткіштер үшін дельталарды есептейді және сол 10 секунд ішінде не болғанын көрсететін оқылады.

5.2.3 Қосымша параметрлер

sp_WhoIsActive теңшеу үшін көптеген параметрлерді қолдайды:

  • @сүзгі: Нәтижелерді арнайы сеанстарға, дерекқорларға немесе логиндерге сүзіңіз.
  • @filter_type: Сүзгі не үшін қолданылатынын көрсетіңіз (сеанс, дерекқор, кіру және т.б.).
  • @get_plans: Нәтижелерге орындау жоспарларын қосыңыз (1-ге орнатылған).
  • @get_locks: Толық құлыптау ақпаратын көрсету (1-ге орнатылған).
  • @get_transaction_info: Транзакция мәліметтерін көрсету (1-ге орнатылған).
  • @sort_order: Нәтижелерді әртүрлі көрсеткіштер бойынша тапсырыс беріңіз (CPU, оқу, ұзақтығы, т.б.).
  • @destination_table: Тарихи бақылау үшін нәтижелерді кестеге енгізіңіз.

CPU бойынша сұрыпталған жоспарларды көрсететін мысал:

EXEC sp_WhoIsActive 
    @get_plans = 1,
    @sort_order = '[CPU] DESC';

5.3 Жүйенің сақталған процедураларын пайдалану

SQL Server әрекетті бақылауға арналған дәстүрлі сақталған процедураларды қамтиды, бірақ олар DMVs немесе Activity Monitor қарағанда аз ақпарат береді.

5.3.1 sp_who және sp_who2

sp_who процедурасы негізгі сеанс ақпаратын көрсетеді:

EXEC sp_who;

sp_who2 процедурасы біршама егжей-тегжейлі береді:

EXEC sp_who2;

Екі процедура да сеанс идентификаторларын, кіру аттарын, процессор уақытын және бұғаттау туралы ақпаратты көрсетеді. Дегенмен, оларда DMV немесе Activity Monitor арқылы қолжетімді бай мәліметтер жоқ. Олар сізге минималды ақпарат қажет болған кезде жылдам тексерулер үшін өте пайдалы.

5.3.2 Басқа пайдалы жүйе процедуралары

Мониторингтің қосымша жүйелік процедуралары мыналарды қамтиды:

  • sp_lock: Құлыптау туралы ақпаратты көрсетеді (ескірген; оның орнына sys.dm_tran_locks пайдаланыңыз).
  • sp_monitor: туралы статистиканы көрсетеді SQL Server белсенділік.
  • sp_help: Нысан анықтамалары мен метадеректерді көрсетеді.
  • DBCC SQLPERF: Транзакция журналының кеңістігін пайдалану және күту статистикасын көрсетеді.

5.4 Пайдаланушы бақылау сценарийлерін жасау

Белсенділік мониторы қамтамасыз ететіннен тыс арнайы бақылауды қажет ететін орталар үшін DMV көмегімен реттелетін шешімдерді құра аласыз.

5.4.1 Толық әрекет мониторының эквивалентті сценарийі

Міне, Activity Monitor функцияларының көпшілігін қайталайтын кешенді сценарий:

-- Processes Information
SELECT 
    s.session_id AS [Session ID],
    CONVERT(CHAR(1), s.is_user_process) AS [User Process],
    s.login_name AS [Login],
    ISNULL(CONVERT(VARCHAR, w.blocking_session_id), '') AS [Blocked By],
    CASE 
        WHEN r2.session_id IS NOT NULL 
        AND (r.blocking_session_id = 0 OR r.session_id IS NULL) 
        THEN '1' 
        ELSE '' 
    END AS [Head Blocker],
    ISNULL(DB_NAME(r.database_id), N'') AS [Database],
    ISNULL(t.task_state, N'') AS [Task State],
    ISNULL(r.command, N'') AS [Command],
    SUBSTRING(st.text, (r.statement_start_offset/2) + 1,
        ((CASE r.statement_end_offset 
            WHEN -1 THEN DATALENGTH(st.text)
            ELSE r.statement_end_offset 
        END - r.statement_start_offset) / 2) + 1) AS [Statement],
    st.text AS [Command Text],
    r.cpu_time AS [CPU Time (ms)],
    r.total_elapsed_time / 1000 AS [Elapsed Time (sec)],
    r.wait_time AS [Wait Time (ms)],
    r.wait_type AS [Wait Type],
    r.wait_resource AS [Wait Resource],
    s.memory_usage * 8 AS [Memory Use (KB)],
    s.host_name AS [Host Name],
    c.client_net_address AS [Net Address],
    s.program_name AS [Application]
FROM sys.dm_exec_sessions s
LEFT JOIN sys.dm_exec_requests r ON s.session_id = r.session_id
LEFT JOIN sys.dm_exec_requests w ON r.session_id = w.blocking_session_id
LEFT JOIN sys.dm_exec_requests r2 ON r.session_id = r2.blocking_session_id
LEFT JOIN sys.dm_os_tasks t ON r.session_id = t.session_id 
    AND r.request_id = t.request_id
LEFT JOIN sys.dm_exec_connections c ON s.session_id = c.session_id
OUTER APPLY sys.dm_exec_sql_text(r.sql_handle) st
WHERE s.session_id != @@SPID
ORDER BY s.session_id;

-- Recent Expensive Queries
SELECT TOP 20
    qs.execution_count / 
        DATEDIFF(MINUTE, qs.creation_time, GETDATE()) AS [Executions/min],
    qs.total_worker_time / 1000 AS [CPU Time (ms)],
    qs.total_physical_reads AS [Physical Reads],
    qs.total_logical_writes AS [Logical Writes],
    qs.total_logical_reads AS [Logical Reads],
    qs.total_elapsed_time / qs.execution_count / 1000 AS [Avg Duration (ms)],
    SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
        ((CASE qs.statement_end_offset 
            WHEN -1 THEN DATALENGTH(st.text)
            ELSE qs.statement_end_offset 
        END - qs.statement_start_offset) / 2) + 1) AS [Query Text]
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
WHERE qs.execution_count > 0
ORDER BY qs.total_worker_time DESC;

5.4.2 SQL агент тапсырмаларымен бақылауды автоматтандыру

Пайдаланушы бақылау сценарийлерін жоспарлауға болады SQL Server Агент:

  1. Бақылау нәтижелерін сақтау үшін кесте жасаңыз.
  2. Осы кестеге нәтижелерді енгізу үшін бақылау сценарийін өзгертіңіз.
  3. In SQL Server Management Studio, кеңейтіңіз SQL Server агент Object Explorer бағдарламасында.
  4. Тінтуірдің оң жағын басыңыз Бос тармағын таңдаңыз және жаңа Job.
  5. Мониторинг сценарийін жүйелі түрде іске қосу үшін тапсырманы теңшеңіз.
  6. Жиналған деректер негізінде ескертулерді немесе есептерді орнатыңыз.

Бұл тәсіл әрекет мониторы қамтамасыз етпейтін тарихи бақылауды және трендті талдауды қосады.

6. Әрекет мониторының шектеулері мен қарастырулары

Белсенділік мониторы құнды болғанымен, оның шектеулерін түсіну оны дұрыс пайдалануға және қажет болғанда басқа құралдармен толықтыруға көмектеседі.

6.1 Әрекет мониторының үстеме шығындарын түсіну

Әрекет мониторы тегін емес — ол ақпаратты жинау және көрсету үшін сервер ресурстарын тұтынады. Бұл үстеме шығындарды түсіну оны жауапкершілікпен пайдалануға көмектеседі.

6.1.1 Сервер ресурстарына әсер ету

Әрекет мониторы жаңартылған сайын жүйелік DMVs қарсы сұрауларды іске қосады. Бұл сұраулар орталық процессорды тұтынады, логикалық оқуларды жасайды және жүйе кестелеріндегі құлыптарды қысқаша ұстай алады. Бос емес серверлерде бұл үстеме шығын өнімділікке әсер етуі мүмкін.

Процестер және соңғы қымбат сұраулар тақталары әсіресе қымбат, себебі олар ықтимал үлкен DMV және кэш кестелерін сканерлеуі керек. Мыңдаған кэштелген сұрау жоспарлары бар серверлерде соңғы қымбат сұрауларды жаңарту бірнеше секундқа созылуы мүмкін.

Майкрософт құжаттамасы 10 секундтан аз жаңарту аралықтары сервер жұмысына, әсіресе жүктелген жүйелерде айтарлықтай әсер етуі мүмкін екенін ескертеді.

6.1.2 Ең жақсы тәжірибелерді жаңарту аралықтары

Жағдайыңызға сәйкес жаңарту аралықтарын таңдаңыз:

  • 1-5 секунд: Аз жүктелген серверлердегі маңызды мәселелерді дереу жою үшін ғана. Белсенділік мониторын осы аралықтарда жұмыс істеп тұрған күйде қалдырмаңыз.
  • 10 секунд (әдепкі): Көптеген ақаулықтарды жою сценарийлері және жалпы бақылау үшін қолайлы.
  • 30-60 секунд: Ауыр жүктеме кезінде немесе ұзақ уақыт бойы бақылау кезінде өндірістік серверлер үшін жақсы таңдау.
  • Тек қолмен жаңарту: Ағымдағы күйді үздіксіз сұраусыз мезгіл-мезгіл тексергіңіз келетін жағдайлар үшін.

Тексеруді аяқтаған кезде әрқашан белсенділік мониторын жабыңыз. Оны үздіксіз жұмыс істеп тұрмаңыз, әсіресе әртүрлі пайдаланушылардың бірнеше даналары.

6.2 Күту түрін топтастыру мәселелері

Activity Monitor бағдарламасының күтулерді жіктеуге деген тәсілі көріністі жеңілдете отырып, маңызды диагностикалық ақпаратты жасыруы мүмкін.

6.2.1 Белсенді бақылау топтары қалай күтеді

SQL Server әрқайсысы белгілі бір ресурсты немесе жағдайды көрсететін жүздеген ерекше күту түрлерін қадағалайды. Әрекет мониторы оларды «Буфер ысырмасы», «Құлыптау» және «Жад» сияқты кең санаттарға топтайды.

Мысалы, «Буфер ысырмасы» санаты PAGELATCH_SH, PAGELATCH_UP, PAGELATCH_EX және бірнеше басқа арнайы күту түрлерін қамтиды. Олардың барлығы бетке кіруге қатысты болса да, олардың себептері мен шешімдері әртүрлі.

Майкрософт нақты қандай күту түрлері қай санаттарға сәйкес келетінін құжаттамайды, бұл шын мәнінде не көріп тұрғаныңызды түсінуді қиындатады.

6.2.2 Күту түрлері жоқ

Activity Monitor барлық күту түрлерін көрсетпейді. Ең бастысы, ол көбінесе CXPACKET күтулерін өткізіп жібереді, бұл параллель сұраныстың орындалуын көрсетеді. CXPACKET күтулері жиі кездеседі және әдетте проблема тудырмайды, бірақ олардың бар екенін білу жұмыс жүктемесінің сипаттамаларын түсінуге көмектеседі.

Белсенділік мониторы ең жақсы күту ретінде «Буфер ысырмасын» көрсеткенде, бірақ басқа құралдар CXPACKET басым екенін көрсеткенде, сәйкессіздік Activity Monitor сүзу және топтау логикасынан туындайды.

6.2.3 Нақты күту түрлері неге маңызды

Арнайы күту түрін білу ақаулықтарды жою үшін маңызды:

  • PAGELATCH_EX: Бөлу беттерінде жиі tempdb қайшылығын көрсетеді. Шешім қосымша tempdb деректер файлдарын қосуды қамтиды.
  • PAGELATCH_SH: Пайдаланушы кестелеріндегі ыстық беттерді көрсетуі мүмкін. Шешім бөлуді немесе индексті қайта ұйымдастыруды қамтиды.
  • PAGELATCH_UP: Жаңартулар кезінде жиі кездеседі. Ақаулықты емес, қалыпты жұмысты көрсетуі мүмкін.

Белсенділік мониторы осылардың барлығын «Буфер ысырмасы» астында топтайды, бұл диагнозды қиындатады. Sp_WhoIsActive және DMV сұраулары сияқты құралдар арнайы күту түрлерін көрсетеді.

6.3 Деректердің дәлдігі және уақытылылығы

Белсенділік мониторы нақты уақыттағы көріністі қамтамасыз етеді, бірақ «жақын» - жедел сөз. Оның деректер жинау әдісін түсіну нәтижелерді дұрыс түсіндіруге көмектеседі.

6.3.1 Сурет пен Үздіксіз бақылау

Белсенділік мониторы әрбір жаңарту аралығында түсірілген бір уақыттағы суретті көрсетеді. Суреттер арасында орын алған оқиғалар түсірілмейді. Сұрау 2 секунд бойы орындалса және сіз әр 10 секунд сайын жаңартып отырсаңыз, уақытқа байланысты оны бір рет көруіңіз немесе мүлдем көрмеуі мүмкін.

Бұл әрекет мониторы тұрақты мәселелерді (ұзақ минуттарды бұғаттау, тұрақты жоғары процессор) табуда жақсы жұмыс істейтінін білдіреді, бірақ өтпелі мәселелерді (қысқаша тығырықтан шығулар, кездейсоқ сұраулар жиілігі) өткізіп жіберуі мүмкін.

6.3.2 Агрегация және іріктеу

Соңғы қымбат сұраныстар тақтасы сұрау жоспарлары кэшке енгізілгеннен бері жинақталған деректерді көрсетеді. Әртүрлі параметр мәндері бар екі бірдей сұрау, егер олар жоспарды ортақ пайдаланса, бір жол ретінде көрсетіледі. Бұл біріктіру арнайы параметр комбинацияларымен проблемаларды бүркемелей алады (параметрлерді анықтау мәселелері).

«Ресурс күтулері» тақтасы суреттерді салыстыру арқылы жылдамдықтарды есептейді. Егер суреттер арасындағы күту статистикасы қалпына келтірілсе (сирек, бірақ мүмкін), есептелген жылдамдықтар дұрыс емес болуы мүмкін.

6.4 Әрекет мониторын ҚОЛДАНБАҢЫЗ

Әрекет мониторы әрбір бақылау сценарийі үшін сәйкес келмейді. Балама құралдардың таңдауы жақсы болған кезде түсініңіз.

6.4.1 Тарихи талдауға қойылатын талаптар

Әрекет мониторы тек ағымдағы немесе соңғы әрекетті көрсетеді. Ол тарихи деректерді сақтамайды. Күндер немесе апталар бойынша трендтерді талдау, ағымдағы өнімділікті бастапқы көрсеткіштермен салыстыру немесе өнімділік үлгілері бойынша есептерді жасау қажет болса, әрекет мониторы жеткіліксіз.

Тарихи талдау үшін пайдаланыңыз SQL Serverкіріктірілген өнімділік басқару тақтасы, файлдық нысаналары бар кеңейтілген іс-шаралар немесе үшінші тарап бақылау шешімдері.

6.4.2 Толық күту статистикасының қажеттіліктері

Жетілдірілген реттеу үшін күту түрі туралы нақты ақпарат қажет болғанда, Activity Monitor топтастыру және сүзу оны жеткіліксіз етеді. DMV сұрауларын тікелей немесе орнына sp_WhoIsActive пайдаланыңыз.

Күту статистикасын кешенді талдау үшін sys.dm_os_wait_stats сұрауын тікелей сұраңыз және жақсы күтулерді қолмен сүзіңіз.

6.4.3 Өндірістік серверді қарастыру

Өндіріс серверлерінде ауыр жүктемеде, Activity Monitor қосымша шығыны проблемалы болуы мүмкін. Бірнеше дерекқор әкімшілерінің барлығы бірдей серверде әрекет мониторын бір уақытта іске қоспауы керек.

Өндіріс мониторингі үшін бақылау дерекқорында сақталған жоспарланған DMV суреттері сияқты жеңіл салмақты баламаларды қарастырыңыз немесе Әрқашан қосулы конфигурацияларындағы қайталама көшірмелерді бақылау үшін Тек оқуға арналған бағыттауды пайдаланыңыз.

7. Белсенділік мониторын пайдаланудың ең жақсы тәжірибелері

Ең жақсы тәжірибелерді орындау серверлеріңізге жағымсыз әсерлерді азайта отырып, Activity Monitor қолданбасынан максималды мән алуға кепілдік береді.

7.1 Әрекет мониторын қашан пайдалану керек

Белсенділік мониторы арнайы сценарийлерде жарқырайды. Оның күшті жақтары сіздің қажеттіліктеріңізге сәйкес келгенде пайдаланыңыз.

7.1.1 Нақты уақыттағы өнімділік мәселелері

Белсенділік мониторы пайдаланушылар қазіргі уақытта ақауларға тап болған кезде және мәселені дереу диагностикалау қажет болғанда өте қолайлы. Нақты уақыттағы көрініс дәл қазір не болып жатқанын көруге көмектеседі.

«Қолданба баяу» деген қоңырау келгенде, Activity Monitor ашу сіздің алғашқы қадамдарыңыздың бірі болуы керек. Дерекқордың бос емес, бұғатталған немесе бос тұрғанын жылдам анықтауға болады.

7.1.2 Қолданбаның баяулауын зерттеу

Арнайы қолданба жауап бермей қалса, Activity Monitor бағдарламасы дерекқор мәселелерінің себебі екенін анықтауға көмектеседі. Тек сол қолданбаның дерекқор әрекетін көру үшін Процестер тақтасын қолданба аты бойынша сүзіңіз.

Пайдаланушылар проблемаларды хабарлаған кезде қолданба дерекқор әрекетін көрсетпесе, мәселе стектің басқа жерінде жатыр. Егер сіз ауқымды блоктауды немесе қымбат сұрауларды көрсеңіз, сіз өз кінәліңізді таптыңыз.

7.1.3 Денсаулықты жылдам тексеру

Белсенділік мониторы күнделікті басқару кезінде денсаулықты жылдам тексеруге арналған тамаша бақылау тақтасын ұсынады. Оны ашыңыз, шолу графиктеріне қараңыз және ештеңе қалыпты емес екенін тексеріңіз.

Бұл курсорлық тексеру бірнеше секундқа созылады және проблемаларды олар маңызды болғанға дейін анықтауы мүмкін. Оны күнделікті жұмысыңыздың бір бөлігіне айналдырыңыз.

7.2 Оңтайлы конфигурация параметрлері

Әрекет мониторын конфигурациялау оның пайдалылығын да, ресурстардың ізін де жақсартады.

7.2.1 Ұсынылатын жаңарту аралықтары

Жаңарту аралығын мақсатыңызға сәйкес келтіріңіз:

  • Белсенді ақауларды жою: 10 секунд ақылға қонымды үстеме шығындармен жақсы жауап беруді қамтамасыз етеді.
  • Кеңейтілген мониторинг: 30-60 секунд ұзағырақ бақылау кезеңдерінде сервер әсерін азайтады.
  • Маңызды мәселенің диагнозы: 5 секунд әрбір секунд маңызды болғанда жоғары түйіршікті береді, бірақ қысқаша пайдаланыңыз.
  • Тұрақты денсаулық тексерулері: Сіз белсенді көрмеген кезде қолмен жаңарту (1 сағат аралық).

Аяқтаған кезде Әрекет мониторын жабуды ұмытпаңыз. Оны ұзақ аралыққа орнату және оны ұмыту сервер ресурстарын босқа жұмсайды.

7.2.2 Сүзгі стратегиялары

Тиісті ақпаратқа назар аудару және когнитивті жүктемені азайту үшін сүзгілерді пайдаланыңыз:

  • Процестер бойынша сүзгілеу дерекқор арнайы дерекқорларға қарсы әрекетті ғана көру.
  • арқылы сүзуге Кіру белгілі бір пайдаланушының әрекетін бақылау үшін.
  • арқылы сүзуге Тапсырма күйі = бос сеанстарды жасыру үшін RUNNING.
  • арқылы сүзуге қолдану трафикті арнайы бағдарламалардан оқшаулау үшін.
  • Тек бос еместерді көрсету Бұғаттаған тек блоктаушы жағдайларды көру үшін.

7.2.3 Бағандарды таңдау және сұрыптау

Activity Monitor деректерін қараудың жүйелі тәсілін әзірлеу:

  1. Жалпы шолудан бастаңыз: Графиктерді айқын өсу немесе ауытқуларды тексеріңіз.
  2. Блоктау процестерін тексеру: Сеанс идентификаторы бойынша сұрыптаңыз, содан кейін Блокталған мәндер бойынша іздеңіз.
  3. Ресурстарды күту уақытын қарау: Ресурс кедергілерін анықтау үшін жиынтық күту уақыты бойынша сұрыптаңыз.
  4. Қымбат сұрауларды талдау: Әр түрлі мәселе түрлерін табу үшін әртүрлі көрсеткіштер бойынша сұрыптаңыз (CPU, орындалулар, оқулар).
  5. Енгізу/шығару тақтасымен растаңыз: Енгізу/шығару қарқынды сұрауларының жоғары диск белсенділігімен сәйкестігін растаңыз.

7.3 Басқа құралдармен интеграция

Белсенділік мониторы жеке шешім ретінде емес, кеңірек құралдар жинағының бөлігі ретінде жақсы жұмыс істейді.

7.3.1 бірге пайдалану SQL Server Профессор

Белсенділік мониторы және SQL Server Профильерлер бір-бірін жақсы толықтырады. Белсенділік мониторында проблемалық сеансты анықтаған кезде, оны тінтуірдің оң жақ түймешігімен басып, таңдаңыз Іздеу процесі SQL Server Профессор.

Бұл тек сол сеанс әрекетін түсіру үшін бұрыннан конфигурацияланған сүзгілері бар Profiler бағдарламасын іске қосады. Сіз орындалған мәлімдемелердің толық тізбегін, уақыт туралы ақпаратты және қате туралы хабарларды көресіз - әрекет мониторы қамтамасыз етпейтін мәліметтер.

Қосымша ақпарат алу үшін SQL Server Профиль жасаушы мүмкіндіктері мен кеңейтілген бақылау әдістерін қараңыз жан-жақты SQL Server Профиль жасаушы нұсқаулығы.

7.3.2 Кеңейтілген оқиғалармен толықтыру

Кеңейтілген оқиғалар әрекет мониторы жіберіп алған ақпаратты түсіретін аз шығынды, егжей-тегжейлі бақылауды ұсынады. Тұйықтаулар, ұзақ орындалатын сұраулар немесе шамадан тыс қайта құрастырулар сияқты нақты оқиғаларды бақылау үшін кеңейтілген оқиға сеанстарын жасаңыз.

Жедел тергеу үшін Әрекет мониторын және ағымдағы бақылау және тарихи талдау үшін кеңейтілген оқиғаларды пайдаланыңыз. Екі құрал әртүрлі қажеттіліктерге жауап береді.

Қосымша ақпарат алу үшін SQL Server Оқиғалардың кеңейтілген мүмкіндіктері мен озық бақылау әдістерін қараңыз жан-жақты SQL Server Оқиғалардың кеңейтілген нұсқаулығы.

7.3.3 Үшінші тарап бақылау шешімдері

SolarWinds дерекқорының өнімділік анализаторы, Redgate SQL Monitor және Quest Spotlight сияқты коммерциялық құралдар Activity Monitor-да жоқ мүмкіндіктерді ұсынады: ескерту, тарихи трендтер, сыйымдылықты жоспарлау және автоматтандырылған диагностика.

Бұл құралдар алмастырғыштар емес, белсенділік мониторына құнды толықтырулар болып табылады. Әрекет мониторы күрделі бақылау құралдары қол жетімді болса да, жылдам тексерулер мен тергеулер үшін пайдалы болып қала береді.

Болдырмауға болатын 7.4 жалпы қателік

Әрекет мониторының жалпы қателерін түсіну оны тиімдірек пайдалануға көмектеседі.

7.4.1 Үздіксіз жұмыс істейтін әрекет мониторын қалдыру

Ең көп таралған қателік - Activity Monitor бағдарламасын ашып, оны шексіз уақыт жұмыс істеп тұру. Бұл сервер ресурстарын босқа жұмсайды және сіз белсенді түрде бақыламайтындықтан, аз пайда әкеледі.

Белсенді пайдаланбаған кезде Әрекет мониторын жабыңыз. Үздіксіз бақылау қажет болса, оның орнына жоспарланған деректерді жинау арқылы тиісті бақылау шешімін енгізіңіз.

7.4.2 Жалғыз әрекет мониторына шамадан тыс сену

Белсенділік мониторы сервер денсаулығына бір перспектива береді. Оған тек қана сенбеңіз. ОЖ деңгейіндегі көрсеткіштерге арналған Windows өнімділік мониторымен, егжей-тегжейлі бақылауға арналған кеңейтілген оқиғалармен және сұрауды баптау үшін орындау жоспарының талдауымен толықтырыңыз.

Әрекет мониторы проблемаларды анықтауға көмектеседі, бірақ оларды шешу үшін жиі қосымша құралдар мен тереңірек талдау қажет.

туралы көбірек біліңіз SQL Server өнімділік мониторы толық нұсқаулық.

7.4.3 Тарихи үрдістерді елемеу

Белсенділік мониторы ағымдағы күйді көрсетеді, бірақ өнімділік мәселелері көбінесе уақыт өте келе көрінетін үлгілерге ие болады. Ағымдағы көрсеткіштерді негізгі көрсеткіштермен салыстыру және тенденцияларды анықтау үшін тарихи деректер жинауды жүзеге асырыңыз.

Тарихи контекстсіз сіз бүгінгі «қалыпты» процессорды пайдалану өткен айдың бастапқы деңгейінен 30% жоғары екенін мойындамауыңыз мүмкін, бұл бірте-бірте деградацияны көрсетеді.

8. Әрекет мониторындағы ақаулықтарды жою

Белсенділік мониторының өзі кейде ақауларға тап болады. Бұл мәселелерді шешу жолын білу көңілсіздіктің алдын алады.

8.1 Әрекет мониторы ашылмайды немесе ешқандай деректер көрсетпейді

Әрекет мониторы ашылғанда, бірақ бос аумақтарды көрсеткенде немесе мүлде ашылмағанда, бірнеше факторлар жауапты болуы мүмкін.

8.1.1 Рұқсат мәселелері

Activity Monitor ақауларының ең көп таралған себебі - рұқсаттардың жеткіліксіздігі. Тексеру және шешу үшін:

  1. Сервер деңгейіндегі рұқсаттарды тексеріңіз:
    SELECT * FROM fn_my_permissions(NULL, 'SERVER')
    WHERE permission_name = 'VIEW SERVER STATE';
    
  2. Ешбір жол қайтарылмаса, сізде СЕРВЕР КҮЙІН КӨРУ рұқсаты жоқ.
  3. Сервер әкімшісінен рұқсат беруін сұраңыз:
    USE master;
    GRANT VIEW SERVER STATE TO [YourLogin];
    
  4. Рұқсаттар берілгеннен кейін Әрекет мониторын жабыңыз және қайта ашыңыз.

8.1.2 Нұсқа үйлесімділік мәселелері

ескі нұсқасын пайдалану SQL Server Жаңасына қосылу үшін Management Studio SQL Server нұсқасы Әрекет мониторының ақауларына әкелуі мүмкін. Құрал жаңа күту түрлерін немесе жүйе көрінісі бағандарын түсінбеуі мүмкін.

Әрқашан сізге сәйкес келетін немесе одан жаңарақ SSMS нұсқасын пайдаланыңыз SQL Server нұсқасы. Microsoft ең соңғы SSMS нұсқасын тегін жүктеп алу ретінде ұсынады SQL Server өзі.

8.1.3 Брандмауэр және желі мәселелері

Әрекет мониторы қосылымды қажет етеді SQL Server стандартты порттардағы данасы (әдепкі бойынша 1433). Object Explorer арқылы қосыла алсаңыз, бірақ әрекет мониторы сәтсіз аяқталса, брандмауэр ережелері арнайы қосылымдарды блоктауы мүмкін.

Клиентіңіздің қол жеткізе алатынын тексеріңіз SQL Server барлық қажетті порттарда құрылғы. Windows брандмауэрін және клиент пен сервер арасындағы желіаралық қалқандарды тексеріңіз.

8.2 Әрекет мониторы біржола кідіртілді

Жалпы мәселе, әсіресе SQL Server 2019 жыл, белсенділік мониторы кідіртілген күйде ашылады және жалғастырудан бас тартады.

8.2.1 Кідіртілген күйді түсіну

Әрекет мониторы кідіртілгенде, барлық тақталар жұмыс істемеуі мүмкін жалғастыру түймесі бар «Кідіртілген» күйін көрсетеді. Бұл кез келген сервер әрекетін көруге жол бермейді.

Кідіртілген күй әдетте әдейі кідірту әрекетінен гөрі рұқсат мәселелеріне, қашықтағы қосылым шектеулеріне немесе SSMS нұсқасы қателеріне байланысты орын алады.

8.2.2 Жалпы себептер

Белсенділік мониторы тұрақты кідірту күйіне келесі себептерге байланысты болуы мүмкін:

  • Жақында қосылған жаңа тақталарда СЕРВЕР КҮЙІН КӨРСЕТУ рұқсаты жоқ SQL Server нұсқалары
  • Қашықтағы қосылымдар өшірілген SQL Server данасы
  • Арнайы жүйелік сұраулар үшін аутентификация қателері
  • Арнайы SSMS құрастыруларындағы қателер, әсіресе 18.0 және 18.3
  • Клиент пен сервер арасындағы байланыс мәселелері

8.2.3 Ажыратымдылық қадамдары

Activity Monitor кідіртілген күй мәселелерін шешу үшін:

  1. SSMS жаңарту: Ең соңғы нұсқаны жүктеңіз және орнатыңыз SQL Server Microsoft веб-сайтындағы Management Studio нұсқасы. Көптеген кідіртілген күй қателері кейінгі шығарылымдарда түзетілді.
  2. Рұқсаттарды тексеру: СЕРВЕР КҮЙІН КӨРУ және КЕЗ КЕЛГЕН АНЫҚТАМА рұқсаттары бар екеніне көз жеткізіңіз.
  3. Қашықтағы қосылымдарды тексеріңіз: Екенін тексеріңіз SQL Server данасы қашықтағы қосылымдарға мүмкіндік береді:
    EXEC sp_configure 'remote access';
    

    Мән 0 болса, әкімшіден оны қосуды сұраңыз.

  4. SSMS қайта іске қосыңыз: Кейде барлық терезелерді жауып, қайта іске қосу жеткілікті SQL Server Management Studio мәселені шешеді.
  5. Windows аутентификациясымен қосылу: SQL аутентификациясын пайдалансаңыз, оның орнына Windows аутентификациясын қолданып көріңіз, себебі ол кейде аутентификацияға қатысты кідірту мәселелерін айналып өтеді.

8.3 Әрекет мониторын пайдалану кезіндегі өнімділік мәселелері

Әрекет мониторының өзі баяу болса немесе сервер өнімділігінің төмендеуіне себеп болса, реттеу қажет.

8.3.1 Бақылау бойынша үстеме шығындарды азайту

Әрекет мониторының әсерін азайту үшін:

  1. Жаңарту аралығын 30 секундқа немесе 1 минутқа дейін арттырыңыз.
  2. Жиыру түймесін басу арқылы белсенді пайдаланылмайтын тақталарды жабыңыз.
  3. Тақталар жиырылған кезде, Activity Monitor олар үшін деректерді сұрамайды.
  4. Бірнеше Activity Monitor данасын бір уақытта іске қосудан аулақ болыңыз.
  5. Мәселелерді белсенді түрде зерттемегенде, белсенділік мониторын толығымен жабыңыз.

8.3.2 Жеңіл салмақты бақылаудың балама әдістері

Әрекет мониторы сіздің ортаңыз үшін тым көп ресурстарды қажет ететін болса, баламаларды қарастырыңыз:

  • Тікелей DMV сұрау: Сізге қажет ақпаратты ғана шығаратын арнайы T-SQL сұрауларын жазыңыз.
  • sp_WhoIsActive пайдаланыңыз: Бұл сақталатын процедура жоғары оңтайландырылған және әдетте Әрекет мониторына қарағанда төмен шығындарға ие.
  • Үлгі алуды жүзеге асыру: DMV деректерінің суретін тұрақты аралықпен түсіретін, нәтижелерді кейінірек талдау үшін кестелерде сақтайтын SQL агент тапсырмаларын жоспарлаңыз.
  • Қосымша көшірмелерді бақылау: In Әрқашан қосулы қолжетімділік топтары, Activity Monitor бағдарламасын негізгі емес, оқылатын қосымша нұсқаға қарсы іске қосыңыз.

8.4 Дәл емес немесе жетіспейтін ақпарат

Кейде Activity Monitor қате немесе толық емес болып көрінетін ақпаратты көрсетеді.

8.4.1 Деректерді DMV арқылы тексеру

Белсенділік мониторының нәтижелері күдікті болып көрінсе, оларды негізгі DMV-ге тікелей сұрау арқылы тексеріңіз. Мысалы, «Процестер» тақтасы блоктауды көрсетпесе, бірақ пайдаланушылар бұл туралы хабарласа, сұраңыз:

SELECT 
    blocking_session_id,
    session_id,
    wait_type,
    wait_time,
    wait_resource
FROM sys.dm_exec_requests
WHERE blocking_session_id != 0;

Бұл сұрауда белсенділік мониторының өткізіп алған блоктауы көрсетілсе, дисплей мәселесін растадыңыз.

8.4.2 Деректерді жаңарту уақытын түсіну

Белсенділік мониторы суреттерді көрсететінін есте сақтаңыз. Жаңарту аралықтары арасында орындалған сұрау, оның орындалу жоспары кэште қалмайынша, Соңғы қымбат сұрауларда пайда болмайды.

Сол сияқты, Ресурстарды күтулер аймағындағы күту статистикасы соңғы суреттен кейінгі жинақты көрсетеді. Жылдам өзгеретін жұмыс жүктемелері әр жаңартуда әртүрлі үлгілерді көрсетуі мүмкін.

9. Әрекетті бақылаудың кеңейтілген әдістері

Тәжірибелі дерекқор әкімшілері Activity Monitor бағдарламасын диагностикалық мәнді барынша арттыру үшін күрделі тәсілдермен пайдаланады.

9.1 Түбірлік себептерді талдау үшін бірнеше аумақтарды біріктіру

Әрекет мониторының нақты күші күрделі өнімділік мәселелерін түсіну үшін ақпаратты бірнеше аумақта байланыстырған кезде пайда болады.

9.1.1 Күтулерді процестермен салыстыру

Ресурстарды күтулер тақтасы санаттағы жоғары күту уақыттарын көрсеткенде, сол күтулердің қай сеанстарда болатынын анықтау үшін Процестер аумағын пайдаланыңыз:

  1. Жоғары жиынтық күту уақыты бар күту санатына назар аударыңыз (мысалы, «Құлыптау»).
  2. Процестер тақтасына ауысыңыз.
  3. Бойынша сұрыптау Күту түрі сеанстарды ағымдағы күту бойынша топтау.
  4. Проблемалық санаттағы күту түрлерін көрсететін сеанстарды іздеңіз.
  5. Бұл сеанстар үшін мынаны қараңыз Күту ресурсы қай дерекқор нысандары қатысатынын көру үшін баған.
  6. Тінтуірдің оң жақ түймешігімен нұқыңыз және таңдаңыз Егжей сұрау мәтінін көру үшін.

Бұл корреляция «бізде құлып күтеді» дегеннен «осы нақты сұрау осы кестеде құлыптарды күтуде» күйіне өтуге көмектеседі.

9.1.2 Қымбат сұраныстарды енгізу/шығару мәселелерімен байланыстыру

Деректер файлының енгізу/шығару тақтасы белгілі бір дерекқорда жоғары диск белсенділігін көрсеткенде:

  1. Қай дерекқор файлдарының МБ/сек оқу немесе жазу жылдамдығы жоғары екенін ескеріңіз.
  2. Соңғы қымбат сұрауларға ауысыңыз.
  3. Бойынша сұрыптау Физикалық оқулар/сек дискіден көп оқылатын сұрауларды анықтау.
  4. Жоғары енгізу/шығару мүмкіндігі бар дерекқорға қарсы орындалатын сұрауларды сүзіңіз немесе көрнекі түрде анықтаңыз.
  5. Шамадан тыс енгізу/шығаруды тудыратын кестені сканерлеу немесе жоқ индекстер үшін осы сұраулардың орындалу жоспарларын тексеріңіз.

Бұл көп панельді талдау белгілерді (жоғары дискінің енгізу/шығару) себептерімен (нақты тиімсіз сұраулар) байланыстырады.

9.2 Сыйымдылықты жоспарлау үшін белсенділік мониторын пайдалану

Әрекет мониторы тарихи деректерді сақтамағанымен, оны мүмкіндіктерді жоспарлау бақылаулары үшін стратегиялық түрде пайдалануға болады.

9.2.1 Ең жоғары пайдалану үлгілерін анықтау

Пайдалану үлгілерін анықтау үшін күннің әртүрлі уақыттарында сервер әрекетін бақылаңыз:

  1. Белгілі ең жоғары жұмыс уақытында белсенділік мониторын ашыңыз.
  2. % Процессор уақыты графигінің ең жоғары мәндерін ескеріңіз.
  3. Күту тапсырмаларының максималды санын жазып алыңыз.
  4. Пакеттік сұраныстарды/сек ең жоғары уақытта сақтаңыз.
  5. Процестер аумағында ең бос дерекқорларды құжаттаңыз.
  6. Салыстыру үшін ең көп емес сағаттарда қайталаңыз.

Процессордың ең жоғары сағаттық уақыты үнемі 80%-дан асатын болса, сіз процессордың сыйымдылық шегіне жақындайсыз. Сол сияқты, күту санының артуы ресурс дауларының өсуін көрсетеді.

9.2.2 Ресурс трендінің талдауы

Белсенділік мониторы ағымдағы күйді көрсеткенімен, оны уақыт бойынша негізгі көрсеткіштерді жазу арқылы трендті тексеру үшін пайдалануға болады:

  • Күн сайын бір уақытта шолу тақтасының скриншоттарын түсіріңіз
  • Әрбір графиктен ең жоғары мәндерді жазыңыз
  • Өсу үрдістерін анықтау үшін апта сайын салыстырыңыз
  • Орташа процессор уақытының немесе енгізу/шығару жылдамдығының біртіндеп артуын қадағалаңыз

Бұл қолмен трендтер неғұрлым күрделі бақылау шешімдерін толықтырады және мүмкіндіктерді кеңейтуді негіздеуге көмектеседі.

9.3 Өнімділіктің негізгі көрсеткіштерін құжаттау

Негізгі өнімділік көрсеткіштерін орнату өнімділік төмендеген кезде тануға көмектеседі.

9.3.1 Базалық көрсеткіштерді түсіру

Белгілі жақсы өнімділік кезеңдерінде Activity Monitor көрсеткіштерін құжаттаңыз:

  1. Қалыпты бизнес операциялары кезінде белсенділік мониторын ашыңыз (ең жоғары немесе жоғары емес).
  2. Жазбаға шолу тақтасының мәндері:
    • Әдеттегі % Процессордың уақыт диапазоны
    • Орташа күту тапсырмаларының саны
    • Дерекқордың қалыпты енгізу/шығару жылдамдығы
    • Әдеттегі пакеттік сұраулар/сек
  3. Ескерту: Ең көп күту уақытын көрсететін Ресурс күтулері тақтасының санаттары.
  4. Белсенді процестердің санын әдетте Процестер аумағында құжаттаңыз.
  5. Соңғы қымбат сұраулардан өкіл сұрауды орындау көрсеткіштерін жазыңыз.

Бұл негізгі құжатты өнімділік мәселелерін зерттеген кезде болашақта анықтама үшін сақтаңыз.

9.3.2 Ағымды және бастапқы өнімділікті салыстыру

Өнімділік мәселелері туындаған кезде, ағымдағы Activity Monitor көрсеткіштерін құжатталған негізгі көрсеткішпен салыстырыңыз:

  • Процессордың уақыты бастапқы деңгейден айтарлықтай жоғары ма? Процессорды көп қажет ететін сұрауларға назар аударыңыз.
  • Күту тапсырмалары 2-3 есе бастапқы деңгейлер ме? Ресурс күтулерін зерттеңіз.
  • Енгізу/шығару айтарлықтай жоғары ма? Деректер файлының енгізу/шығару тақтасын және қымбат сұрауларды тексеріңіз.
  • Пакеттік сұраныстар ең жоғары сағаттарда бастапқы деңгейден төмен ме? Блоктау немесе қосылу мәселелерін іздеңіз.

Бұл салыстыру ненің өзгергенін анықтауға және ақауларды жою әрекеттерін дұрыс бағыттауға көмектеседі.

9.4 Теңшелетін бақылау жұмыс процестерін жасау

Мұқият, қайталанатын талдауды қамтамасыз ету үшін жалпы тергеу сценарийлері үшін жүйелі жұмыс процестерін жасаңыз.

9.4.1 Қадамдық тергеу процесі

Пайдаланушылар өнімділік мәселелері туралы хабарлағанда, дәйекті жұмыс процесін орындаңыз:

  1. Денсаулықты жылдам тексеру: Әрекет мониторын ашыңыз және айқын ауытқулар үшін шолу тақтасының графиктерін сканерлеңіз.
  2. Блоктауды тексеріңіз: Процестер аумағын кеңейтіңіз, Блокталған бағандағы бос еместер үшін сүзгі.
  3. Ресурс дауларын анықтаңыз: Күту уақыты бойынша сұрыпталған Ресурстарды қарау аумағы.
  4. Қымбат сұрауларды табыңыз: Орталық процессор бойынша сұрыпталған соңғы қымбат сұрауларды, содан кейін орындалулар, содан кейін оқылатындарды тексеріңіз.
  5. Енгізу/шығару үлгілерін салыстыру: Деректер файлы енгізу/шығару тақтасының әрекеті бар айқас сілтеме қымбат сұраулар.
  6. Құжаттардың қорытындылары: Скриншоттарды алыңыз және сәйкес сеанс идентификаторларын, күту түрлерін және сұрау мәліметтерін жазыңыз.
  7. Терең сүңгу: Анықталған мәселелерді егжей-тегжейлі зерттеу үшін Profiler іздерін, орындау жоспарын талдауды және DMV сұрауларын пайдаланыңыз.

9.4.2 Көтеру критерийлері

Тергеуді жалғастырумен салыстырғанда мәселенің көтерілуіне қатысты критерийлерді белгілеңіз:

  • Бірден жоғарылатыңыз: Ұзақтығы >5 минутқа созылатын блоктау тізбектері, >2 минут ішінде 100% процессор уақыты, ТОҚТАТУ күйін көрсететін маңызды жүйе процестері.
  • Талдау арқылы жоғарылату: >50% процессорды тұтынатын қайталанатын қымбат сұраныстар, тұрақты жоғары енгізу/шығару жауап беру уақыты >50 мс, жад гранттары қайта-қайта сәтсіздікке ұшырайды.
  • Әрі қарай зерттеңіз: Уақытша күтулер бірнеше минут ішінде шешілді, жоспарлары нашар, бірақ өнімділігі қолайлы сұраулар, ұзақтығы 30 секундтан аз шағын бұғаттау.

10. Әртүрлі әрекет мониторы SQL Server Нұсқаулар

Белсенділік мониторы дамыды SQL Server нұсқалары, әр шығарылымда жақсартулар және кейде жаңа мәселелер.

10.1 Белсенділік мониторы SQL Server 2008 және одан кейінгі

SQL Server 2008 жылы белсенділік мониторының заманауи дизайны ұсынылды, ол бүгінде айтарлықтай өзгеріссіз қалады.

10.1.1 Жаңа мүмкіндіктер енгізілген SQL Server 2008

The SQL Server 2008 Activity Monitor қайта дизайны айтарлықтай жақсартулар әкелді:

  • Шолу аумағында нақты уақыттағы диаграммалары бар графикалық бақылау тақтасы
  • Тек ескі тор көрінісін ауыстыратын кеңейтілетін/жиналмалы тақта интерфейсі
  • Жиынтық сұрау өнімділігі деректерін көрсететін соңғы қымбат сұраныстар тақтасы
  • Әр файлдағы диск әрекетін бақылауға арналған деректер файлының енгізу/шығару тақтасы
  • Күту санаттары бар жақсартылған ресурс Күтулер тақтасы
  • Сеанстарды жою және Profiler бағдарламасын іске қосу сияқты процесс әрекеттері үшін мәтінмәндік мәзірлерді тінтуірдің оң жақ түймешігімен басыңыз
  • Конфигурацияланатын жаңарту аралықтары 1 секундтан 1 сағатқа дейін

Бұл өзгерістер Әрекет мониторын қарапайым процестер тізімінен толық бақылау тақтасына айналдырды.

10.1.2 Өзгерістер SQL Server 2005

SQL Server 2005 жылғы белсенділік мониторы әлдеқайда шектеулі болды:

  • Құралдар тақтасынан гөрі Object Explorer бағдарламасындағы Басқару қалтасы арқылы қол жеткізіледі
  • Негізгі ақпараты бар процестер тізімін көрсететін жалғыз тор
  • Графикалық диаграммалар немесе бірнеше тақталар жоқ
  • Қымбат сұраулар немесе енгізу/шығару мониторингі жоқ
  • Шектеулі күту статистикасы туралы ақпарат

2008 жылғы қайта дизайн қадамдық жақсартуды емес, толық қайта құруды көрсетті.

10.2 Белсенділік мониторы SQL Server 2014/2016

SQL Server 2014 және 2016 жылдар Activity Monitor бағдарламасының негізгі деректер жинауына қосымша жақсартулар енгізді, бірақ көрнекі өзгерістер аз.

10.2.1 Жақсартулар мен жақсартулар

Бұл нұсқалардағы негізгі жақсартулар мыналарды қамтиды:

  • Мыңдаған кэштелген жоспарлары бар серверлерді бақылау кезінде жақсы өнімділік
  • Процестер тақтасындағы жақсартылған сүзу мүмкіндіктері
  • Күту статистикасын біріктірудің жақсартылған дәлдігі
  • Үлкен нәтиже жиындарымен бағандарды сұрыптау мен сүзуді жақсырақ өңдеу
  • Мониторинг шығындарын азайтатын тиімдірек DMV сұраулары

Негізгі интерфейс сәйкес болып қалды SQL Server 2008, әкімшілер үшін танысуды сақтау.

10.3 Белсенділік мониторы SQL Server 2019/2022

жуырда SQL Server нұсқалары өнімділік пен тұрақтылыққа назар аудара отырып, Activity Monitor эволюциясын жалғастырады.

10.3.1 Соңғы мүмкіндіктер мен мүмкіндіктер

SQL Server 2019 және 2022 Activity Monitor мыналарды қамтиды:

  • Осы нұсқаларда енгізілген жаңа күту түрлерін қолдау
  • WPF технологиясын пайдалана отырып, SSMS жүйесінде жақсартылған көрсету өнімділігі
  • Белсенді сеанстардың көп санын жақсырақ өңдеу
  • Бұлтты SQL платформаларымен жақсартылған үйлесімділік
  • Дәлірек CPU және енгізу/шығару көрсеткіштері

10.3.2 Соңғы нұсқалардағы белгілі мәселелер

SQL Server 2019 жылы бірнеше белсенділік мониторы қателері енгізілді:

  • Тұрақты кідіртілген күй: Белсенділік мониторы жиі кідіртілген күйге енеді және жалғастырылмайды, әсіресе SSMS 18.0-18.3. Кейінгі SSMS нұсқаларында түзетілді.
  • Қашықтан қосылу ақаулары: Кейбір конфигурациялар Әрекет мониторын қашықтағы даналарда ашуға жол бермейді. Шешімдерге арнайы бақылау жалаушаларын қосу немесе жаңа SSMS құрастыруларын пайдалану кіреді.
  • Рұқсат мәселелері: Жаңа жүйе көріністері нақты құжатталмаған қосымша рұқсаттарды талап етеді, бұл тіпті VIEW SERVER STATE болса да бос дисплейлерді тудырады.

Жұмыс кезінде әрқашан соңғы SSMS нұсқасын пайдаланыңыз SQL Server Бұл мәселелерді болдырмау үшін 2019 және 2022.

11. Практикалық қолдану жағдайлары мен мысалдары

Нақты мысалдар жалпы ақауларды жою сценарийлерінде Activity Monitor қолданбасын тиімді қолдану жолын көрсетеді.

11.1 Жағдайды зерттеу: баяу веб-қосымшаны диагностикалау

Әзірлеу тобы олардың веб-бағдарламасы жол берілмейтіндей баяу болды деп хабарлайды, бетті жүктеу қалыпты 2-3 секундтың орнына 20-30 секундты алады.

11.1.1 Шолу аумағы бар бастапқы зерттеу

Әрекет мониторын ашып, шолу тақтасын қараңыз:

  1. % Процессор уақыты графигі 85-95% процессорды пайдалануды көрсетеді, бұл қалыпты 30-40% бастапқы деңгейден айтарлықтай жоғары.
  2. Күту тапсырмалары қалыпты бастапқы 0-3 көрсеткішімен салыстырғанда 10-20 тапсырма арасында ауытқиды.
  3. Дерекқор енгізу/шығару шамамен 50 МБ/с орташа белсенділікті көрсетеді.
  4. Пакеттік сұраулар/сек жұмыс уақытындағы әдеттегі 300-400/секпен салыстырғанда 100/сек күтілгеннен төмен.

Бұл үлгі өткізу қабілетінің төмендеуіне әкелетін ресурс даулары бар процессордың тығырығын көрсетеді. Сервер көп жұмыс істейді, бірақ көп сұрауларды өңдемейді.

11.1.2 Проблемалық сұрауды анықтау

Соңғы қымбат сұраныстар аумағын кеңейтіп, Орындау/мин бойынша сұрыптаңыз:

  1. Жоғарғы сұрау минутына 15 000 орындауды көрсетеді.
  2. Тінтуірдің оң жақ түймешігімен нұқыңыз және таңдаңыз Сұрау мәтінін өңдеу сұрауды тексеру үшін.
  3. Сұрау бір пайдаланушы жазбасын шығарып алатын қарапайым SELECT мәлімдемесі болып табылады: SELECT * FROM Users WHERE UserId = @UserId.
  4. Қалыпты қолданбаны пайдалану үшін бұл сұрау минутына 15 000 рет орындалмауы керек.

Сұрауды тінтуірдің оң жақ түймешігімен басып, таңдаңыз Орындау жоспарын көрсету. Жоспар UserId бағанында жоқ индекс туралы ескертуі бар Пайдаланушылар кестесіндегі кестені сканерлеуді көрсетеді.

Тек веб-бағдарламаның қосылымдарын көрсету үшін Процестер тақтасын қолданба бойынша сүзіңіз. Бірнеше сеанстар осы бір сұраудың қайталануын көрсетеді.

11.1.3 Шешім және тексеру

Мәселе екі мәселеден туындайды: шамадан тыс сұрауды орындау және жоқ индекс. Шешім қадамдары:

  1. Жетіспейтін индексті жасаңыз:
    CREATE NONCLUSTERED INDEX IX_Users_UserId 
    ON Users (UserId);
    
  2. Әзірлеу тобына хабарласыңыз шамадан тыс өлім жазасы туралы. Зерттеу қолданба кодындағы N+1 сұрау мәселесін анықтайды, мұнда цикл тізімдегі әрбір элемент үшін пайдаланушы мәліметтерін шығарып алады.
  3. Қолданбаны өзгертіңіз IN сөйлемін немесе кесте мәні бар параметрді пайдаланып, пайдаланушы іздеулерін бір сұрауға бумалау үшін.
  4. Түзетуді тексеріңіз орналастырудан кейін әрекет мониторын бақылау арқылы. Орталық процессорды пайдалану 35-40%-ға дейін төмендейді, минутына орындалу саны 200-300-ге дейін төмендейді және қолданбаның жауап беру уақыты қалыпты жағдайға оралады.

11.2 Жағдайды зерттеу: блоктау мәселесін шешу

Пайдаланушылар тапсырысты енгізу жүйесі қалыпты жұмысты жалғастырмас бұрын 30-60 секундқа мерзімді түрде қатып тұратынын хабарлайды.

11.2.1 Блоктау тізбегін анықтау

Осы мұздату оқиғаларының бірі кезінде Әрекет мониторын ашып, Процестер аумағын кеңейтіңіз:

  1. Бойынша сұрыптау Сеанс идентификаторы ұйымдастырылған барлық сеанстарды көру.
  2. Бірнеше сеанстар мәндерді көрсетеді Бұғаттаған баған, барлығы сеанс идентификаторы 73-ке нұсқайды.
  3. 73-сессияда '1' көрсетіледі Бас блокаторы баған, оның негізгі себебі екенін растайды.
  4. The Күту түрі блокталған сеанстар үшін LCK_M_X көрсетеді, бұл олардың эксклюзивті құлыптарды күтіп тұрғанын көрсетеді.
  5. The Күту ресурсы баған бұғаттаудың Тапсырыстар кестесінде екенін көрсетеді.

11.2.2 Себепті талдау

73-сеансты тінтуірдің оң жақ түймешігімен басып, таңдаңыз Егжей пәрменді көру үшін:

UPDATE Orders 
SET Status = 'Processing', 
    LastModified = GETDATE()
WHERE OrderId IN (SELECT OrderId FROM #TempOrders);

Бұл жаңарту сағат сайын орындалатын пакеттік өңдеу тапсырмасының бөлігі болып табылады. Тексеру Кіру баған сеанстың пакетті өңдеу қызметінің тіркелгісіне жататынын растайды.

Сұрау мыңдаған тапсырыстарды өңдеу кезінде Тапсырыстар кестесінде құлыптарды ұстайды. The Күту уақыты бұғатталған сеанстар үшін тұрақты түрде артады, бұл ұзаққа созылған операцияның мәселе екенін растайды.

11.2.3 Түзетуді енгізу

Қысқа мерзімді шешім:

  1. Сұрау мәтіні мен ұзақтығын қоса, 73-сессияның мәліметтерін құжаттау.
  2. Жаңартудың табиғи түрде аяқталуына рұқсат беріңіз, себебі ол заңды пакеттік өңдеу.
  3. Аяқтағаннан кейін бұғатталған сеанстардың тазалығын және қалыпты жұмыстардың жалғасатынын тексеріңіз.

Ұзақ мерзімді шешімдер енгізілді:

  1. Топтама жұмысын қайта жоспарлаңыз көп емес уақытта жұмыс істеу (жұмыс уақытының орнына 2-4 сағат).
  2. Пакеттік өңдеуді өзгертіңіз бір уақытта 100 жазбадан тұратын шағын партиялардағы тапсырыстарды жаңарту, пакеттер арасындағы құлыптарды босату.
  3. Индекс қосыңыз Жаңарту әрекетін жылдамдату үшін OrderId бағанында.
  4. SNAPSHOT оқшаулауын қарастырыңыз блоктау әсерін азайту үшін оқу әрекеттеріне арналған.

11.3 Жағдайды зерттеу: Шамадан тыс сұрауларды орындауды анықтау

Дерекқор мониторингі соңғы айда процессорды пайдалану біртіндеп артқанын көрсетеді, бірақ қолданба кодында айқын өзгерістер орын алмаған.

11.3.1 Қалыпты орындалу сандарын анықтау

Әрекет мониторын ашып, соңғы қымбат сұраулар тақтасын қараңыз:

  1. Бойынша сұрыптау Орындау/мин ең жиі орындалатын сұрауларды көру үшін.
  2. Жоғарғы сұрау минутына 37 000 орындауды көрсетеді – бұл кез келген басқа сұраудан әлдеқайда жоғары.
  3. Тінтуірдің оң жақ түймешігімен нұқыңыз және таңдаңыз Сұрау мәтінін өңдеу.
  4. Сұрау өнім санаты туралы ақпаратты шығарады:
    SELECT CategoryId, CategoryName 
    FROM ProductCategories 
    WHERE CategoryId = @CategoryId;
    
  5. Бұл қарапайым сұрау жылдам және кэштелген болуы керек, бірақ ол минутына ондаған мың рет орындалады.

11.3.2 Қолданба кодына бақылау

Процестер аумағында осы сұрауды орындайтын сеанстарды табыңыз:

  1. Назар аударыңыз қолдану бағанында «ProductCatalogService» көрсетіледі.
  2. Осы сеанстардың біреуін тінтуірдің оң жақ түймешігімен басып, таңдаңыз Іздеу процесі SQL Server Профессор.
  3. SQL Profiler сұраудың әртүрлі CategoryId мәндерімен жылдам ретімен бірнеше рет орындалатынын көрсетеді.
  4. Кодты тексеру үшін ProductCatalogService басқаратын әзірлеу тобына хабарласыңыз.

Кодты қарап шығу мәселені анықтайды: соңғы өзгерту санаттары бар өнім тізімдерін шығарады. Нәтиже жиынындағы әрбір өнім үшін (көбінесе 1,000+ өнім) код санат ақпаратын алу үшін бөлек дерекқор шақыруын жасайды — классикалық N+1 сұрау мәселесі.

11.3.3 Қолданбаны оңтайландыру

Тиісті түзетуді орындаңыз:

  1. Қолданба сұрауын өзгертіңіз JOIN алу өнімдерін және олардың санаттарын бір дерекқор шақыруында пайдалану үшін:
    SELECT p.ProductId, p.ProductName, c.CategoryId, c.CategoryName
    FROM Products p
    INNER JOIN ProductCategories c ON p.CategoryId = c.CategoryId
    WHERE p.Active = 1;
    
  2. Жаңартылған кодты орналастырыңыз және Әрекет мониторын бақылаңыз.
  3. Түзетуді тексеріңіз: Санат сұрауының минутына орындалу саны 37 000-нан 100-ге дейін төмендейді және жалпы процессорды пайдалану 40%-ға төмендейді.
  4. Алған сабақты құжаттаңыз және болашақ код өзгерістерінде ұқсас мәселелерді болдырмау үшін әзірлеу тобымен бөлісіңіз.

12. Мәліметтер қорының ықтимал бүлінуін анықтау

Әрекет мониторы дерекқордың бүлінуін анықтау үшін арнайы жасалмағанымен, оның дисплейіндегі кейбір үлгілер қосымша тексеруді талап ететін негізгі сыбайлас жемқорлық мәселелерін ұсынуы мүмкін.

12.1 Мәліметтер қорының ықтимал бүлінуінің белгілері

Егер дерекқордың бүлінуі бар болса және оған кіруге рұқсат етілсе, анда-санда мыналарды көруге болады:

1. Процестер аумағында:

  • Сеанстар әдеттен тыс күту түрлерімен SUSPENDED күйінде қалды
  • Қате күйлерін көрсететін процестер
  • Сұраулар қайталанбайды

2. Ресурстарды күту аумағында:

  • Дискідегі ақауларды көрсетуі мүмкін әдеттен тыс енгізу/шығаруға қатысты күту түрлері (бірақ бұл логикалық бүлінуден гөрі аппараттық құралдардың ақауларын көрсетеді)

3. Соңғы қымбат сұрауларда:

  • Бүлінген беттерді қайта-қайта оқуға тырысқанда, физикалық оқылымдары әдеттен тыс жоғары сұраулар

12.2 DBCC CHECKDB арқылы қосымша тексеру

Әрекет мониторы ықтимал бүлінуді ұсынатын белгілерді көрсеткенде, дерекқордың тұтастығын тексеру үшін DBCC CHECKDB бағдарламасын дереу іске қосу керек. Бұл пәрмен барлық дерекқор беттерін сканерлейді, бақылау сомасын тексереді және логикалық сәйкестік қателерін тексереді.

Дерекқордың бүлінулерін тексеру және түзету үшін DBCC CHECKDB пайдалану жолы туралы қосымша ақпарат алу үшін біздің бөлімді қараңыз жан-жақты DBCC CHECKDB нұсқаулығы.

12.3 Кәсіби құралдармен жөндеу

Егер DBCC CHECKDB дерекқордың бүлінуін растаса, сізде жөндеудің бірнеше нұсқасы бар:

13. қорытынды

SQL Server Белсенділік мониторы дерекқор әкімшілері үшін баға жетпес құрал болып табылады, ол сервердің өнімділігі туралы дереу түсінік береді және мәселелерді тез және тиімді диагностикалауға көмектеседі.

13.1 Негізгі нүктелердің қысқаша мазмұны

Осы нұсқаулықта біз Activity Monitor бағдарламасының ақауларды түсінуге және жоюға қалай көмектесетінін зерттедік SQL Server орындау:

  • Белсенділік мониторы ұйымдастырылған, графикалық интерфейс арқылы процестерді, күтулерді, сұрауларды және енгізу/шығаруды нақты уақытта көруге мүмкіндік береді.
  • Бес тақта — шолу, процестер, ресурстарды күтулер, деректер файлын енгізу/шығару және соңғы қымбат сұраулар — әрқайсысы сервер әрекетінің бірегей перспективаларын ұсынады.
  • Шамадан тыс сұрауларды орындау, блоктау тізбектері және жоғары процессорды пайдалану сияқты жалпы ақауларды жою сценарийлері жүйелік Activity Monitor зерттеуімен басқарылатын болады.
  • Күшті болғанымен, Activity Monitor қолданбасына тарихи деректердің жетіспеушілігі, күту түрін топтастыру және бақылау шығындары сияқты шектеулер әсер етеді, бұл оның қолданылуына әсер етеді.
  • Әрекет мониторын DMV сұрауларымен, sp_WhoIsActive, кеңейтілген оқиғалармен және ықтимал үшінші тарап құралдарымен толықтыру кешенді бақылау стратегиясын жасайды.
  • Жаңарту аралықтарына арналған ең жақсы тәжірибелерге сүйене отырып, пайдаланбаған кезде Әрекет мониторын жабу және корреляция үшін бірнеше тақталарды біріктіру әсерді азайта отырып, оның мәнін барынша арттырады.

13.2 Әрекет мониторы құралдар жинағының бөлігі ретінде

Әрекет мониторы жалғыз құрал емес, өнімділікті тексеруге арналған бірінші жауап құралы ретінде қызмет етуі керек. Оның күші белсенді ақаулықтарды жою кезінде дереу көрінуді қамтамасыз етуде жатыр, бұл дерекқордың тығырыққа тірелгенін тез анықтауға және қандай нақты аспектілерді тереңірек зерттеуді қажет ететінін анықтауға көмектеседі.

Белсенділік мониторын көлігіңіздегі бақылау тақтасына ұқсас етіп елестетіп көріңіз — ол бірдеңе дұрыс емес екенін бірден хабарлайды және жалпы алаңдаушылық аймағын анықтауға көмектеседі. Көлігіңіздің бақылау тақтасы тексеру қозғалтқыш шамының неліктен жанып тұрғанын нақты көрсетпегені сияқты, Белсенділік мониторы әрқашан олардың толық себебін ашпай-ақ, сізді проблемаларға нұсқайды. Бұл тереңірек талдау қосымша құралдар мен тәжірибені қажет етеді.

Белсенділік мониторын орындау жоспарын талдауды, күту статистикасын бақылауды, тарихи бақылау шешімдерін және өнімділіктің ең жақсы тәжірибелерін қамтитын кеңірек құралдар жинағына біріктіріңіз. Оны дұрыс индекстеу стратегияларымен, сұрауларды оңтайландыру әдістерімен және қуатты жоспарлаумен бірге пайдаланыңыз.

13.3 Оқу саяхатыңызды жалғастыру

Әрекет мониторын меңгеру - тиімді дерекқор әкімшісі болудың бір ғана қадамы. Өз дағдыларыңызды дамытуды жалғастырыңыз:

  • Орындау жоспарларын түсіндіруді және тиімсіз операцияларды анықтауды үйрену
  • түсінетін SQL Server күту статистикасы және олардың салдары
  • Индексті жобалау және оңтайландыру әдістерін оқу
  • Exploring SQL Serverархитектурасы және оның сұрауларды өңдеу жолы
  • Ақауларды жоюдың жүйелі әдістемелерін қолдану
  • Егжей-тегжейлі бақылау үшін кеңейтілген оқиғалармен тәжірибе құру
  • Транзакцияны оқшаулау деңгейлерін және олардың өнімділікке әсерін түсіну

Белсенділік мониторы арқылы әрбір өнімділікті тексеру сізге қалай істеу туралы жаңа нәрсені үйретеді SQL Server жұмыс істейді және қолданбалардың дерекқорлармен қалай әрекеттесетіні. Зерттеу нәтижелерін құжаттаңыз, біліміңізді әріптестеріңізбен бөлісіңіз және жиі кездесетін мәселелерге арналған шешімдер кітапханасын құрыңыз.

13.4 Қосымша ресурстар

Осы құнды ресурстармен біліміңізді кеңейтіңіз:

14. Жиі қойылатын сұрақтар (FAQ)

С: Бұл не SQL Server Әрекет мониторы?

A: SQL Server Белсенділік мониторы ішіне кіріктірілген құрал болып табылады SQL Server a. жүйесінде орындалатын процестер туралы нақты уақыттағы ақпаратты көрсететін Management Studio SQL Server данасы және олардың сервер ресурстарына әсері. Ол процессорды пайдалану, күту тапсырмалары, енгізу/шығару жылдамдығы, белсенді сеанстар және қымбат сұраныстар сияқты сервер әрекетінің әртүрлі аспектілерін көрсететін бес тақтасы бар графикалық бақылау тақтасын ұсынады.

С: Әрекет мониторын SSMS жүйесінде қалай ашуға болады?

A: Әрекет мониторын төрт әдіс арқылы ашуға болады: (1) SSMS құралдар тақтасындағы Белсенділік мониторы белгішесін басыңыз, (2) Тінтуірдің оң жақ түймешігімен басыңыз. SQL Server Object Explorer ішіндегі дананың атауын таңдаңыз және таңдаңыз Әрекет мониторингі, (3) түймесін басыңыз Ctrl + Alt + A, немесе (4) арқылы автоматты түрде іске қосу үшін SSMS конфигурациялаңыз Құралдар -> Опциялар -> қоршаған орта -> Жіберу.

С: Әрекет мониторын пайдалану үшін маған қандай рұқсаттар қажет?

A: Сізге керек СЕРВЕР КҮЙІН КӨРУ Белсенділік мониторының көптеген ақпаратын көруге рұқсат. Деректер файлының енгізу/шығару тақтасы үшін сізге келесінің бірі қажет: ДЕРЕКТЕР БАЗЫН ҚҰРУ, КЕЗ КЕЛГЕН ДЕРЕКТЕР БАЗЫН ӨЗГЕРТУнемесе КЕЗ КЕЛГЕН АНЫҚТАМАЛАРДЫ ҚАРАУ рұқсаттар. Бұл рұқсаттарсыз, Activity Monitor ашылуы мүмкін, бірақ бос аумақтарды көрсетуі мүмкін.

С: Әрекет мониторым неге кідіртілді немесе жұмыс істемейді?

A: Әрекет мониторы әдетте рұқсат мәселелеріне, ескірген SSMS нұсқаларына немесе өшірілген қашықтағы қосылымдарға байланысты кідіртеді. Шешу үшін: (1) соңғы SSMS нұсқасына жаңарту, (2) СЕРВЕР КҮЙІН КӨРУ рұқсаты бар екенін тексеріңіз, (3) Интернетте қашықтағы қосылымдар қосылғанын тексеріңіз. SQL Server мысалы, (4) SSMS жүйесін қайта іске қосыңыз және (5) Қажет болса, SQL аутентификациясының орнына Windows аутентификациясымен қосылып көріңіз.

С: Activity Monitor және sp_WhoIsActive арасындағы айырмашылық неде?

A: Activity Monitor — әртүрлі бақылау аспектілері үшін ұйымдастырылған аумақтарды қамтамасыз ететін SSMS ішіне орнатылған графикалық құрал. sp_WhoIsActive - белсенділік мониторына қарағанда нақты күту түрлері, блоктау мәліметтері және теңшеу опциялары бар бір нәтиже жиынында егжей-тегжейлі сеанс ақпаратын қайтаратын тегін қауымдастық жасаған сақталатын процедура. Белсенділік мониторы көрнекі зерттеу үшін жақсырақ, ал sp_WhoIsActive сценарийді бақылауда жақсырақ және толығырақ ақпарат береді.

С: Activity Monitor сервер жұмысына әсер ете ме?

Ж: Иә, Әрекет мониторының өлшенетін үстеме шығындары бар, себебі ол әрбір жаңарту аралығында жүйенің DMV деректерін сұрайды. Төменгі жаңарту жылдамдығымен әсер артады—Microsoft 10 секундтан төмен аралықтардың сервер жұмысына әсер етуі мүмкін екенін ескертеді. Белсенді пайдаланбаған кезде белсенділік мониторын әрқашан жабыңыз және ауыр жүктеме кезінде өндірістік серверлерде 30-60 секундтық жаңарту аралықтарын қарастырыңыз.

С: T-SQL арқылы Activity Monitor деректерін ала аламын ба?

Ж: Иә, Activity Monitor sys.dm_exec_requests, sys.dm_exec_sessions, sys.dm_os_wait_stats және sys.dm_exec_query_stats сияқты жүйелік динамикалық басқару көріністерін сұрайды. Бағдарламалық жолмен баламалы ақпаратты алу үшін, пайдаланушы бақылау сценарийлерін және автоматтандырылған деректерді жинауды қоса отырып, T-SQL арқылы осы DMVs тікелей сұрауға болады.

С: Әдепкі жаңарту аралығы қандай?

A: Әдепкі жаңарту аралығы 10 секунд. Оны таңдау арқылы шолу тақтасының кез келген жерін тінтуірдің оң жақ түймешігімен басу арқылы өзгертуге болады Жаңарту аралығы, және алдын ала анықталған опциялардан таңдау: 1 секунд, 5 секунд, 10 секунд, 30 секунд, 1 минут немесе 1 сағат. Төменгі аралықтар көбірек нақты уақыттағы көріністерді қамтамасыз етеді, бірақ бақылаудың үстеме шығындарын арттырады.

С: SSMS іске қосылған кезде Activity Monitor-ды қалай автоматты түрде ашуға болады?

A: SSMS опциялары арқылы автоматты іске қосуды конфигурациялау: Келесіге өтіңіз Құралдар -> Опциялар -> қоршаған орта -> Жіберу, сосын таңдаңыз Object Explorer және Activity Monitor ашыңыз -дан Старт кезінде түсіп қалу. Әрекет мониторы SSMS серверіне қосылған сайын автоматты түрде ашылады.

С: Әрекет мониторының шектеулері қандай?

A: Негізгі шектеулерге мыналар жатады: (1) тарихи деректерді сақтау немесе тренд мүмкіндіктері жоқ, (2) күту түрлері арнайы көрсетілгеннен гөрі санаттарға топтастырылған, (3) CXPACKET сияқты кейбір күту түрлері көрсетілмеуі мүмкін, (4) «Уақыттағы суреттер» өтпелі ақауларды жіберіп алуы мүмкін, (5) Бақылаудың үстеме шығындары бос емес серверлерге әсер етуі мүмкін, (6) бірнеше белсенді деректерді бақылау механизмі жоқ, (7) деректерді алдын ала бақылау мүмкін емес. SQL Server даналары. Осы қажеттіліктер үшін Әрекет мониторын кеңейтілген оқиғалармен, деректер жинау жиындарымен немесе үшінші тарап бақылау құралдарымен толықтырыңыз.


Автор туралы

Юань Шэн бойынша 10 жылдан астам тәжірибесі бар дерекқордың аға әкімшісі (DBA) болып табылады SQL Server орталар мен кәсіпорынның дерекқорын басқару. Ол қаржы қызметтері, денсаулық сақтау және өндірістік ұйымдардағы дерекқорды қалпына келтірудің жүздеген сценарийлерін сәтті шешті.

Юань маманданған SQL Server дерекқорды қалпына келтіру, жоғары қолжетімді шешімдержәне өнімділікті оңтайландыру. Оның кең практикалық тәжірибесіне көп терабайттық дерекқорларды басқару, әрқашан қолжетімділік топтарын енгізу және маңызды бизнес жүйелері үшін автоматтандырылған сақтық көшірме жасау және қалпына келтіру стратегияларын әзірлеу кіреді.

Техникалық тәжірибесі мен практикалық көзқарасы арқылы Юань дерекқор әкімшілері мен АТ мамандарына күрделі мәселелерді шешуге көмектесетін толық нұсқаулықтарды жасауға бағытталған. SQL Server қиындықтарды тиімді шешеді. Ол соңғы жаңалықтардан хабардар болып отырады SQL Server шығарылымдары мен Microsoft корпорациясының дамып келе жатқан дерекқор технологиялары, оның ұсыныстары нақты әлемдегі ең жақсы тәжірибелерді көрсететініне көз жеткізу үшін қалпына келтіру сценарийлерін жүйелі түрде сынап отырады.

туралы сұрақтарыңыз бар SQL Server қалпына келтіру немесе қосымша дерекқор ақаулықтарын жою нұсқаулығы қажет пе? Юань қарсы алады кері байланыс пен ұсыныстар осы техникалық ресурстарды жақсарту үшін.

Қазір бөлісу: