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

Откуда:
Сообщений: 3
Здравствуйте!

Помогите пожалуйста решить проблему. ОС Win Server 2008 R2 Datacenter SP1, 128 Гб ОЗУ. Крутятся базы 1С на SQL Server 2008 10.0.1600.22. Пользователи ходят по rdp. По расписанию после рабочего дня выполняется регламент "Обновление статистики". Сейчас выполнение этой задачи заканчивается с ошибкой:

Не удалось получить данные по этому запросу. (Microsoft.SqlServer.Management.Sdk.Sfc)
------------------------------
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ:
При выполнении инструкции или пакета Transact-SQL возникло исключение. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
Недостаточно свободной памяти в буферном пуле. (Microsoft SQL Server, ошибка: 802)
------------------------------
DTExec.exe
Data Transformation Services Execution Utility


При запуске этой задачи вручную:

При выполнении инструкции или пакета Transact-SQL возникло исключение.
------------------------------
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ:
Для выполнения этого запроса недостаточно системной памяти в пуле ресурсов "default". (Microsoft SQL Server, ошибка: 701)
Номер ошибки: 701
Серьезность: 17
Состояние: 1
Процедура: sp_get_composite_job_info
Номер строки: 131

Во время начала задачи проц занят на 10%, ОЗУ где-то на 30-40%. После ошибки в SQL не могу попасть до перезапуска процесса, соответственно информация не сохраняется. В этот момент проц загружен на 40-45%, ОЗУ - около 50-60% (по диспетчеру задач). Устанавливал и настраивал SQL не я. Работало несколько лет без проблем. Помогите разобраться. Ниже скрины действующих настроек.

К сообщению приложен файл. Размер - 77Kb
23 июл 19, 09:25    [21932323]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Yasha123
Member

Откуда:
Сообщений: 1651
при 128Гб памяти сиквелу только 30?
кому оставшиеся 100?
и кстати, этот макс мемори только крышка сверху.
отобрать память у него могли чуть ли не всю.
---
ошибка у вас вылетает не при сборе статистики,
а еще раньше при сборе инфо о джобах.
выясняйте, кто пожрал всю память.
ограничьте прожорливых, а не сиквел.
23 июл 19, 10:23    [21932370]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
heckfy16
Member

Откуда:
Сообщений: 3
Yasha123
при 128Гб памяти сиквелу только 30?
кому оставшиеся 100?


На этот же сервер ходят пользователи 1С по rdp. И в пик рабочего дня загрузка оперативной памяти достигает 85-90%. Скорее всего поэтому выставлено ограничение в 30Гб. Имеет смысл выставить больше? Или минимальный размер поднять? Rdp не положит сервак?
---------
Yasha123
выясняйте, кто пожрал всю память.


Мы же об оперативной памяти говорим?
В момент обнаружения ошибки ОЗУ загружена всего на 60%. И в это время никакие другие задачи не выполняются, ни бэкапы, ни архивация и пр.
23 июл 19, 10:48    [21932396]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6695
heckfy16,

поднимите минимум, для начала
23 июл 19, 10:50    [21932402]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Yasha123
Member

Откуда:
Сообщений: 1651
и максимум уберите.
а лучше, дайте ему право лочить страницы в памяти.
чтобы никто не смел отбирать.
заодно узнаете, сколько ему надо по-правде памяти,
+ запищит основной отжиратель памяти.
тем более, раз вы считаете, что память не проблема
23 июл 19, 11:05    [21932429]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
invm
Member

Откуда: Москва
Сообщений: 8848
heckfy16
Крутятся базы 1С на SQL Server 2008 10.0.1600.22.
Для начала пофиксите SQL Server до последнего SP+CU
23 июл 19, 11:11    [21932447]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
uaggster
Member

Откуда:
Сообщений: 729
Yasha123
и максимум уберите.
а лучше, дайте ему право лочить страницы в памяти.
чтобы никто не смел отбирать.
заодно узнаете, сколько ему надо по-правде памяти,
+ запищит основной отжиратель памяти.
тем более, раз вы считаете, что память не проблема

Ненене!
Максимум не вздумайте убирать!
Оно сервер 1С обожрёт и саму ОС.
Lock Page in Memory в случае, если верхней границы нет - вообще смерти подобно.

Как справедливо уже было указано invm , у Вас RTM версия, без каких либо фиксов. Актуальная версия 2008 - 10.0.6556.0.
Сперва обновитесь.
23 июл 19, 14:50    [21932736]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Yasha123
Member

Откуда:
Сообщений: 1651
uaggster
Yasha123
и максимум уберите.
а лучше, дайте ему право лочить страницы в памяти.
чтобы никто не смел отбирать.
заодно узнаете, сколько ему надо по-правде памяти,
+ запищит основной отжиратель памяти.
тем более, раз вы считаете, что память не проблема

Ненене!
Максимум не вздумайте убирать!
Оно сервер 1С обожрёт и саму ОС.
Lock Page in Memory в случае, если верхней границы нет - вообще смерти подобно.

вот и надо, чтобы обожрал.
чтобы ТС своими глазами увидел, достаточно памяти или нет.
а то ошибка типа "недостаточно памяти" ему ни о чем не говорит.
ну так пускай сиквел загребет, сколько ему надо,
тогда ТС, возможно, и поверит.
---
у нас виртуалка отгребала память у сервера только так.
делала свой driver locked (ballooned memory), чтобы отдавать из него черт знает кому.
системист настаивал на том, что серверу же и отдает.
т.е. отбирает у него, чтобы ему же и отдать.
курам на смех.
чтобы своими глазами увидел, "отдали или нет серверу же",
пришлось страницы залочить.
и вот когда виртуалка запищала, что памяти ей не хватает,
системист пересмотрел свою позицию типа "ему же и отдает".
23 июл 19, 15:25    [21932788]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6960
Сиквел память отдает системе, но при определённом простое. Я у себя локально наблюдаю такую картину периодически.
23 июл 19, 15:41    [21932819]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Yasha123
Member

Откуда:
Сообщений: 1651
Владислав Колосов
Сиквел память отдает системе, но при определённом простое. Я у себя локально наблюдаю такую картину периодически.

и без всякого простоя отдает.
когда с него требуют и страницы не залочены.
при этом еррорлог полон созданием и выгрузкой AppDomain (master.sys[runtime].xxx),
каждую секунду создает и тут же выгружет, какой уж тут простой.
вот наш еррорлог времен недавней войны с системистом
----
а когда он, наконец, перестал выделять память серверной машине динамически,
мы мирно зажили без верхней границы и без залоченных страниц

К сообщению приложен файл. Размер - 63Kb
23 июл 19, 16:04    [21932860]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Yasha123
Member

Откуда:
Сообщений: 1651
тех, кому в явном виде пишут Недостаточно свободной памяти в буферном пуле,
и кто при этом заявляет В этот момент проц загружен на 40-45%, ОЗУ - около 50-60%
тому пора верхний лимит с сиквела снять или же подвинуть до 64Гб хотя бы,
раз 50% памяти при этом "ничья".

но, еще раз, эта "верхняя граница" - всего лишь предел, за который сервер не выйдет.
отобрать память у него могут в любой момент.
тем, кто уверен, что "никто не отбирает", советую страницы залочить.
зразу станет ясно, отбирают или нет, когда он не отдаст
23 июл 19, 16:10    [21932872]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
heckfy16
Member

Откуда:
Сообщений: 3
Yasha123,
спасибо! Буду пробовать.
23 июл 19, 16:22    [21932883]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
uaggster
Member

Откуда:
Сообщений: 729
Yasha123
uaggster
пропущено...

Ненене!
Максимум не вздумайте убирать!
Оно сервер 1С обожрёт и саму ОС.
Lock Page in Memory в случае, если верхней границы нет - вообще смерти подобно.

вот и надо, чтобы обожрал.
чтобы ТС своими глазами увидел, достаточно памяти или нет.
а то ошибка типа "недостаточно памяти" ему ни о чем не говорит.
ну так пускай сиквел загребет, сколько ему надо,
тогда ТС, возможно, и поверит.
---
у нас виртуалка отгребала память у сервера только так.
делала свой driver locked (ballooned memory), чтобы отдавать из него черт знает кому.
системист настаивал на том, что серверу же и отдает.
т.е. отбирает у него, чтобы ему же и отдать.
курам на смех.
чтобы своими глазами увидел, "отдали или нет серверу же",
пришлось страницы залочить.
и вот когда виртуалка запищала, что памяти ей не хватает,
системист пересмотрел свою позицию типа "ему же и отдает".

Гм... А как памяти вообще может быть достаточно?
Ну вот у меня базы, в среднем, 200 Гб. Сервера стандард. Ну, т.е. 64 Гб в buffer pool - у него максимум (у меня 2014).
Базы стандартно по идиотски спроектированы. Они и OLTP, и отчеты по ним считают, от начала времен.
На серверах от 32 до 128 ГБ, плюс еще всякие гады живут, типа серверов приложения 1C.
Да мне всегда памяти не хватает! :-)
Я тупо ставлю 8 Гб в минимум, 64 (если на сервере 128) или до 48, если 64 Гб - в максимум, даю привелегии lock page in memory, и желаю всем хорошего настроения.
Чего тут можно сделать то? Я правда не понимаю.
Ткните уж в беспрактиз тогда, пожалуйста.
23 июл 19, 16:51    [21932922]     Ответить | Цитировать Сообщить модератору
 Re: Недостаточно свободной памяти в буферном пуле.  [new]
Yasha123
Member

Откуда:
Сообщений: 1651
uaggster
Гм... А как памяти вообще может быть достаточно?
Ну вот у меня базы, в среднем, 200 Гб. Сервера стандард. Ну, т.е. 64 Гб в buffer pool - у него максимум (у меня 2014).
Базы стандартно по идиотски спроектированы. Они и OLTP, и отчеты по ним считают, от начала времен.
На серверах от 32 до 128 ГБ, плюс еще всякие гады живут, типа серверов приложения 1C.
Да мне всегда памяти не хватает! :-)
Я тупо ставлю 8 Гб в минимум, 64 (если на сервере 128) или до 48, если 64 Гб - в максимум, даю привелегии lock page in memory, и желаю всем хорошего настроения.
Чего тут можно сделать то? Я правда не понимаю.
Ткните уж в беспрактиз тогда, пожалуйста.


ваша ситуация не наша.
у нас тоже Стандард и тоже 2014.
системист гордо заявил, что серверу выделено 40Гб памяти.
его личной, персональной.

а я что вижу: что серверная память выше 20Гб не поднимается вообще,
PLE уходит в 0,
в ожиданиях сплошные PAGEIOLATCH_SH/EX.
и это типа "ему 40 много, вот он 20 и отдал"???
я ему ставлю мин 28, макс 32, на след. день прихожу, а у него снова 20
+ весь еррорлог закакан аппдомэйнами.

ну если мин и макс не помогают,
то я лочу страницы, и вот тогда, о ужас, сервер за час набирает 32 (32 из 40!!!
8Гб винде не жирно ли вообще?)
и тут системит прибегает и говорит, что виртуалка помирает.

я ему показываю 32 и спрашиваю, как это ей не хватает 8Гб, где это видано?
и еще ему его баллун показываю, какие нафиг "40 Гб личные, персональные"?
да виртуалка крала память сервера, и не себе, она отдавала еще черт знает кому.

и вот таким образом, о чудо, серверу наконец-то отваливают 40Гб,
из которых он 36-37 забирает,
мы теперь живем без верхней границы.
все довольны
23 июл 19, 17:41    [21932953]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить