Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ошибка с tempdb  [new]
raydens
Member

Откуда:
Сообщений: 6
добрый день,
имеется MS SQL 2008 R2 Express, 1С сервер, 4 базы 1С (Альфа-Авто). Сервер Intel Xeon E5520 (2 процессора), 24 Гб ОЗУ, Windows Server 2008 R2 Standard.
Последнее время SQL начал чудить: когда сотрудник отдела сервиса создает заказ-наряд на ремонт авто - 1с зависает (не всегда). При этом на сервере видно, что в консоли 1С Servers растут цифры в колонках Соединение с СУБД и Захвачено СУБД, а в мониторе ресурсов идет бешеная запись/чтение файла tempdb.mdf. Пока лечится только перезапуском службы MS SQL Server, при этом если сначала не закрыть (пусть и аварийно) 1с на ПК где идет захват СУБД - перезапуск не помогает. Если удалить этот "захваченный" сеанс из консоли сервера - потом невозможно зайти в 1с, выдается ошибка сразу после ввода логина/пароля. Примечательно, что происходит это только в 1 базе и только у двух человек (которые непосредственно и создают заказ-наряды).
Что пробовал делать: 1) проверять жесткие диски с базами и логами - они в порядке; 2) переносить tempdb и сами базы на другие диски (разные), менять размер базы tempdb; 3) проверять базы 1с на ошибки; 4) чистить кэш 1С на тех двух ПК, удалять и добавлять базу в список с другим именем.
Осложняется дело тем, что ошибка плавающая, например, день-два работают нормально, на третий зависнет, хотя все делается одинаково. Помогите пожалуйста понять в чем причина такого поведения?

К сообщению приложен файл. Размер - 148Kb
11 окт 16, 09:14    [19767222]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
ТемпДб полезно вынести на отдельный физический (именно физический) диск. Хорошо если он ССД.
Он должен быть достаточного размера. Следить за размером темпДБ (если распухает - шринковать).
Посмотреть на 1С-код. Мож там какая-то кривизна, неиндексированные важные поля.
11 окт 16, 09:44    [19767325]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
raydens
Member

Откуда:
Сообщений: 6
tempdb на отдельном физическом диске (даже переносили на разные), правда не SSD, таких на сервере нет.
За размером слежу, пробовал изменять начальный размер ему (до 200-250 Мб), такого размера он и есть, не растет вообще.
А вот 1С да, спасибо, гляну.
11 окт 16, 09:59    [19767381]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
komrad
Member

Откуда:
Сообщений: 5759
raydens
добрый день,
имеется MS SQL 2008 R2 Express, 1С сервер, 4 базы 1С (Альфа-Авто). Сервер Intel Xeon E5520 (2 процессора), 24 Гб ОЗУ, Windows Server 2008 R2 Standard.
Последнее время SQL начал чудить: когда сотрудник отдела сервиса создает заказ-наряд на ремонт авто - 1с зависает (не всегда). При этом на сервере видно, что в консоли 1С Servers растут цифры в колонках Соединение с СУБД и Захвачено СУБД, а в мониторе ресурсов идет бешеная запись/чтение файла tempdb.mdf.


покажите
select @@version


12МБ/сек - это не бешеная скорость.
Похоже на неоптимальный план выполнения запросов (plan reuse для другого набора параметров).

Можно попробовать почистить процедурный кэш, когда проблема снова проявится.
Это не конечное решение, но проблему нащупать поможет.
11 окт 16, 13:48    [19768909]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
raydens
Member

Откуда:
Сообщений: 6
есть кстати еще один нюанс, с SQL - регламентные задания (Обновление статистик, Очистка процедурного КЭШа, Дефрагментация индексов, Реиндексация таблиц базы данных) насколько я знаю не выполняются (возможно из-за отсутствия планировщика в версии Express).
Версия - на скриншоте

К сообщению приложен файл. Размер - 6Kb
11 окт 16, 15:13    [19769458]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
komrad
Member

Откуда:
Сообщений: 5759
raydens
есть кстати еще один нюанс, с SQL - регламентные задания (Обновление статистик, Очистка процедурного КЭШа, Дефрагментация индексов, Реиндексация таблиц базы данных) насколько я знаю не выполняются (возможно из-за отсутствия планировщика в версии Express).

посмотрите в планировщике винды - возможно там есть вызов батников/скриптов

хотя может у вас база вся в кэше лежит - экспресс-то больше 10ГБ не тянет

покажите
select * from sys.configurations 
11 окт 16, 16:11    [19769874]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
raydens
Member

Откуда:
Сообщений: 6
прикрепляю

К сообщению приложен файл. Размер - 142Kb
11 окт 16, 16:34    [19770039]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
komrad
Member

Откуда:
Сообщений: 5759
raydens,

а можно текстом, используя тег CSV?
11 окт 16, 16:35    [19770045]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
raydens
Member

Откуда:
Сообщений: 6
еще раз пардон.. наверное должно быть так:
101recovery interval (min)00327670Maximum recovery interval in minutes11
102allow updates0010Allow updates to system tables10
103user connections00327670Number of user connections allowed01
106locks0500021474836470Number of locks for all users01
107open objects0021474836470Number of open database objects01
109fill factor (%)001000Default fill factor percentage01
114disallow results from triggers0010Disallow returning results from triggers11
115nested triggers1011Allow triggers to be invoked within triggers10
116server trigger recursion1011Allow recursion for server level triggers10
117remote access1011Allow remote access00
124default language210999921default language10
400cross db ownership chaining0010Allow cross db ownership chaining10
503max worker threads0128327670Maximum worker threads01
505network packet size (B)4096512327674096Network packet size11
518show advanced options0010show advanced options10
542remote proc trans0010Create DTC transaction for remote procedures10
544c2 audit mode0010c2 audit mode01
1126default full-text language1049021474836471049default full-text language11
1127two digit year cutoff2049175399992049two digit year cutoff11
1505index create memory (KB)070421474836470Memory for index create sorts (kBytes)11
1517priority boost0010Priority boost01
1519remote login timeout (s)200214748364720remote login timeout10
1520remote query timeout (s)60002147483647600remote query timeout10
1531cursor threshold-1-12147483647-1cursor threshold11
1532set working set size0010set working set size01
1534user options00327670user options10
1535affinity mask0-214748364821474836470affinity mask11
1536max text repl size (B)65536-1214748364765536Maximum size of a text field in replication.10
1537media retention003650Tape retention period in days11
1538cost threshold for parallelism50327675cost threshold for parallelism11
1539max degree of parallelism0010240maximum degree of parallelism11
1540min memory per query (KB)102451221474836471024minimum memory per query (kBytes)11
1541query wait (s)-1-12147483647-1maximum time to wait for query memory (s)11
1543min server memory (MB)00214748364716Minimum size of server memory (MB)11
1544max server memory (MB)40961621474836474096Maximum size of server memory (MB)11
1545query governor cost limit0021474836470Maximum estimated cost allowed by query governor11
1546lightweight pooling0010User mode scheduler uses lightweight pooling01
1547scan for startup procs0010scan for startup stored procedures01
1548awe enabled0010AWE enabled in the server01
1549affinity64 mask0-214748364821474836470affinity64 mask11
1550affinity I/O mask0-214748364821474836470affinity I/O mask01
1551affinity64 I/O mask0-214748364821474836470affinity64 I/O mask01
1555transform noise words0010Transform noise words for full-text query11
1556precompute rank0010Use precomputed rank for full-text query11
1557PH timeout (s)601360060DB connection timeout for full-text protocol handler (s)11
1562clr enabled0010CLR user code execution enabled in the server10
1563max full-text crawl range402564Maximum crawl ranges allowed in full-text indexing11
1564ft notify bandwidth (min)00327670Number of reserved full-text notifications buffers11
1565ft notify bandwidth (max)100032767100Max number of full-text notifications buffers11
1566ft crawl bandwidth (min)00327670Number of reserved full-text crawl buffers11
1567ft crawl bandwidth (max)100032767100Max number of full-text crawl buffers11
1568default trace enabled1011Enable or disable the default trace11
1569blocked process threshold (s)00864000Blocked process reporting threshold11
1570in-doubt xact resolution0020Recovery policy for DTC transactions with unknown outcome11
1573user instance timeout6056553560The timeout of the user instance after no connection is made on the server11
1575user instances enabled1011Enable or disable creation of user instances10
1576remote admin connections0010Dedicated Admin Connections are allowed from remote clients10
1580filestream access level0020Sets the FILESTREAM access level10
1581optimize for ad hoc workloads0010When this option is set plan cache size is further reduced for single-use adhoc OLTP workload.11
1582access check cache bucket count00655360Default hash bucket count for the access check result security cache11
1583access check cache quota0021474836470Default quota for the access check result security cache11
16384Agent XPs0010Enable or disable Agent XPs11
16385SQL Mail XPs0010Enable or disable SQL Mail XPs11
16386Database Mail XPs0010Enable or disable Database Mail XPs11
16387SMO and DMO XPs1011Enable or disable SMO and DMO XPs11
16388Ole Automation Procedures0010Enable or disable Ole Automation Procedures11
16390xp_cmdshell0010Enable or disable command shell11
16391Ad Hoc Distributed Queries0010Enable or disable Ad Hoc Distributed Queries11
16392Replication XPs0010Enable or disable Replication XPs11
11 окт 16, 16:54    [19770202]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
komrad
Member

Откуда:
Сообщений: 5759
raydens,

спасибо


Резюме:
проверьте, есть ли у вас задачи (скрипты/батчи/иное) по профилактике БД - они нужны, особенно для 1С.
Размер базы 1С какой? При наличии свободной памяти на сервере (20ГБ?), можно отдать сиквелу побольше, чем 4ГБ. Серверу СУБД много памяти не бывает.

Делайте регулярную профилактику (см рекомендации для 1С в частности) и будет вам счастье.
11 окт 16, 16:58    [19770225]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
raydens
Member

Откуда:
Сообщений: 6
по профилактике ничего нет. Я все собираюсь хотя бы регламентные задания скриптами повесить.
Размер той базы, где происходит ошибка 3.04 Гб (размер mdf файла).
По поводу увеличения памяти для SQL - а у Express нет ограничения на используемый размер? Я почему-то думал, что ее там больше не добавить.. А так на сервере обычно в рабочем режиме занято 10-12 Гб, т.е. половина.
Хотя, если смотреть на диспетчер задач, то процесс sqlservr.exe всегда занимает не больше 1,5 Гб памяти.
11 окт 16, 17:16    [19770315]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
aleks2
Guest
komrad
raydens,

спасибо


Резюме:
проверьте, есть ли у вас задачи (скрипты/батчи/иное) по профилактике БД - они нужны, особенно для 1С.
Размер базы 1С какой? При наличии свободной памяти на сервере (20ГБ?), можно отдать сиквелу побольше, чем 4ГБ. Серверу СУБД много памяти не бывает.

Делайте регулярную профилактику (см рекомендации для 1С в частности) и будет вам счастье.


Не. Неправильно это. 10Гб - это ниочем.

Правильно:
1. Поймать запрос, который вешает, профайлером.
2. Накормить его индексами.
11 окт 16, 17:21    [19770349]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка с tempdb  [new]
komrad
Member

Откуда:
Сообщений: 5759
aleks2
Не. Неправильно это. 10Гб - это ниочем.

Правильно:
1. Поймать запрос, который вешает, профайлером.
2. Накормить его индексами.


Ему надо сначала разобраться с профилактикой, а потом уже навешивать 1С индексы на таблицы, которые потом она срубит (подозреваю).

Ловить запрос профайлером нужны мало-мальские навыки...

Небось на той же машине работает сам 1С и операторы в терминальных сессиях...
11 окт 16, 17:27    [19770391]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить