|
Зависание sql server
|
|||
---|---|---|---|
#18+
В общем есть такая проблема. Перенесли БДшку с сервера (windows server 2016, sql server 2016) на сервер (windows server 2019, sql server 2019), сейчас БД в совместимости sql server 2016. После переноса день-два всё работало стабильно, потом начались тормоза. Часть запросов выполняется по 1 мин., вместо 2-3 секунд. Начал делать перестроение индексов, скуль полностью заблочил таблицу, пришлось ребутить и убивать запрос на перестроение. После ребута, работа нормализовалась, индексы так же хорошо перестроились и быстро перестроились. Спустя 2-3 дня снова такие же тормоза. Что пробовал делать: - обновление планов запроса (выполняется быстро, но не помогает); - перестроение индекса (скуль блочит таблицу, приходится ребутить); - выполнял dbcc flushprocindb и dbcc freeproccache (выполняются быстро, но не помогает); В общем у меня идеи закончились куда копать. Сталкивался кто с таким? Может перевести БДшку в режим совместимости 2019? Кто что посоветует? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 15:05 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop, для начала покажите select @@version ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 15:07 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop, Может быть tempdb на медленном диске оставили или одним файлом? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 15:09 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
komrad, Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) Sep 24 2019 13:48:23 Copyright (C) 2019 Microsoft Corporation Enterprise Edition (64-bit) on Windows Server 2019 Standard 10.0 <X64> (Build 17763: ) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 15:19 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
teCa, на nmve лежит БДшка, логи на ssd, tempdb на ssd (не один файл) логи и tempdb на одном диске ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 15:22 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop komrad, Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) Sep 24 2019 13:48:23 Copyright (C) 2019 Microsoft Corporation Enterprise Edition (64-bit) on Windows Server 2019 Standard 10.0 <X64> (Build 17763: ) у вас RTM, на который вышло уже 9 фиксов Max_Tpop- перестроение индекса (скуль блочит таблицу, приходится ребутить); это в общем нормально, в зависимости от команды ребут сервера - это через чур какие профилактические работы настроены и с какой периодичностью? Max_TpopВ общем у меня идеи закончились куда копать. Для начала попробуйте обновить статистику на базе. В 2019 доступен QueryStore - посмотрите на планы ваших тормозящих запросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 15:28 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop teCa, на nmve лежит БДшка, логи на ssd, tempdb на ssd (не один файл) логи и tempdb на одном диске простите, а "лежит БДшка" - означает "база"? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 18:11 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop, проверьте настройки подключений по умолчанию сервера на соответствие набору ansi defaults, кроме всего прочего. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2021, 21:54 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
komrad, Обновили сервер до версии Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Enterprise Edition (64-bit) on Windows Server 2019 Standard 10.0 <X64> (Build 17763: ) Но не особо помогло. Профилактические работы раз в день с утра, обновление статистики и перестроение/реорганизация индексов ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 10:52 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Ролг Хупин, Да, база данных находится на NVMe носителе Логи и tempdb на отдельном SSD ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 10:54 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Владислав Колосов, Настройки сервера по умолчанию, ничего не включали (в общем все галки сняты из этого раздела) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 10:55 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop, поставьте так ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:35 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop, верная картинка ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:38 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
перестроение индексов отменить, для проблемных запросов смотреть планы Причины по которым планы могут менятся изложены здесь http://sqlcom.ru/dba-tools/sql-server-management-studio-optimization-part-1/ http://sqlcom.ru/dba-tools/sql-server-management-studio-optimization-part-2/ http://sqlcom.ru/dba-tools/sql-server-management-studio-optimization-part-3/ ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 17:34 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop Начал делать перестроение индексов, скуль полностью заблочил таблицу, пришлось ребутить и убивать запрос на перестроение. оффлайновое перестроение всегда лочит таблицу, не нравится, перестаивайте онлайново, редакция позволяет. --- чем не угодил kill убить rebuild, что за мания чуть что "ребутить"? --- статистику ожиданий покажите: SQL Server Wait Statistics на сервере, куда меня позвали разбираться, любители апдэйтить по 20млн строк за раз лочили таблицы эксклюзивно целиком (lock escalation), а лечили это ребутом. ну да, если отвалить всех блокировщиков, таблицы неожиданно становятся доступными. их рассказы на ваши похожи ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 17:41 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Yasha123, Yasha123чем не угодил kill убить rebuild, что за мания чуть что "ребутить"? kill не помогает, пробовал, всё зависает. Сейчас еще заметил особенность, при добавление constraint всё так же зависает...до этого, на другом сервере, constraint добавлялись быстро и не висло ничего. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 09:44 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Владислав Колосов, включение этих галок может привести к неработоспособности текущих запросов? Поверх БД написано очень много кода на C#, с помощью которого дергается БДшка (выполнение запросов через System.Data.SqlClient) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 09:46 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Yasha123, БДшка больше OLTP, массовых апдейтов нет, в основном быстрые транзакции по работе с одной записью (вставка, обновление) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 09:48 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Yasha123, WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_SCXPACKET1530824.411452679.1578145.2672271432836.170.00210.00200.0001SOS_SCHEDULER_YIELD1152985.75153.921152831.8335994301927.240.00320.00000.0032LATCH_EX1070784.87997224.9973559.8871537376125.300.00150.00140.0001LCK_M_IS160630.80160583.7447.0768553.8023.432623.42580.0069LCK_M_IX108341.18108311.5029.68653112.561.65891.65840.0005 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 10:27 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop Yasha123, WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_SCXPACKET1530824.411452679.1578145.2672271432836.170.00210.00200.0001SOS_SCHEDULER_YIELD1152985.75153.921152831.8335994301927.240.00320.00000.0032LATCH_EX1070784.87997224.9973559.8871537376125.300.00150.00140.0001LCK_M_IS160630.80160583.7447.0768553.8023.432623.42580.0069LCK_M_IX108341.18108311.5029.68653112.561.65891.65840.0005 Первые 2 строки - это ожидания связанные с CPU, почитал несколько статей по этим типам ожидания, Понял - что эта статистика может как означать нехватку ресурса CPU, так и указывать на то, что сервер просто хорошо работает с параллелизмом. Не понял - как выяснить, проблема это или нет, на одном из моих серверов примерно такая же статистика, при этом загрузка CPU в пределах 80%. Интересно послушать мнение специалистов. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 12:49 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop Владислав Колосов, включение этих галок может привести к неработоспособности текущих запросов? Поверх БД написано очень много кода на C#, с помощью которого дергается БДшка (выполнение запросов через System.Data.SqlClient) Да, некоторые могут оказать влияние, например, если вы намеренно используете игнорирование NULL при конкатенации. В таком случае, включите только арифметические прерывания. MS настоятельно рекомендует включать эту настройку для формирования оптимальных планов запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 12:54 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
teCa Max_Tpop Yasha123, WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_SCXPACKET1530824.411452679.1578145.2672271432836.170.00210.00200.0001SOS_SCHEDULER_YIELD1152985.75153.921152831.8335994301927.240.00320.00000.0032LATCH_EX1070784.87997224.9973559.8871537376125.300.00150.00140.0001LCK_M_IS160630.80160583.7447.0768553.8023.432623.42580.0069LCK_M_IX108341.18108311.5029.68653112.561.65891.65840.0005 Первые 2 строки - это ожидания связанные с CPU, почитал несколько статей по этим типам ожидания, Понял - что эта статистика может как означать нехватку ресурса CPU, так и указывать на то, что сервер просто хорошо работает с параллелизмом. Не понял - как выяснить, проблема это или нет, на одном из моих серверов примерно такая же статистика, при этом загрузка CPU в пределах 80%. Интересно послушать мнение специалистов. ну нехватка ЦПУ точно мимо, конфигурация сервера мощная ЦП Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz Базовая скорость: 2,60 ГГц Сокетов: 2 Ядра: 36 Логических процессоров: 72 Виртуализация: Включено Кэш L1: 2,3 МБ Кэш L2: 36,0 МБ Кэш L3: 49,5 МБ Использование 38% Скорость 3,37 ГГц Время работы 13:21:19:45 Процессы 160 Потоки 7633 Дескрипторы 135735 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 13:05 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Владислав Колосов Max_Tpop Владислав Колосов, включение этих галок может привести к неработоспособности текущих запросов? Поверх БД написано очень много кода на C#, с помощью которого дергается БДшка (выполнение запросов через System.Data.SqlClient) Да, некоторые могут оказать влияние, например, если вы намеренно используете игнорирование NULL при конкатенации. В таком случае, включите только арифметические прерывания. MS настоятельно рекомендует включать эту настройку для формирования оптимальных планов запроса. Вечером попробуем включить данную настройку, отпишусь по результатам ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 13:06 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
Max_Tpop Yasha123, БДшка больше OLTP, массовых апдейтов нет, в основном быстрые транзакции по работе с одной записью (вставка, обновление) 1. что такое "БДшка" ? 2. что значит фраза "БДшка больше OLTP"? 3. спасиба ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 14:13 |
|
Зависание sql server
|
|||
---|---|---|---|
#18+
ну вот же LCK_M_IS, LCK_M_IX. лочите вы свои таблицы целиком, или потому что ребилдите оффлайново (энтерпрайз же, приспичило днем ребилдить, делайте онлайново), или апдэйтите тучу строк и у вас идет эскалация до таблицы, или кто-то нарочно хинты использует TABLOCK/TABLOCKX. для разблокировки читателей, ибо они точно ждут, на базе включите RCSI. будут читать последнюю закоммиченную копию, LCK_M_IS уйдет. для разруливания писателей ищите, какие таблицы лочатся целиком массовыми апдэйтами или вставками с таблоком. проверьте все модули на наличие таблоков в виде хинтов, не найдете хинты, ищите, на каких таблицах апдэйтите просто тучу строк за раз. да скорее всего и сами знаете, куда временами не можете достучаться. разбивайте апдэйты на пачки или переносите на ночь или на проблемных таблицах запретите эскалацию ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 14:40 |
|
|
start [/forum/topic.php?fid=46&fpage=31&tid=1684983]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
40ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 312ms |
total: | 443ms |
0 / 0 |