Sql Server 2005 - не удается получить ресурс LOCK

Наблюдаемая проблема и error message:

The instance of the SQL Server Database Engine cannot obtain a LOCK resource at this time. Rerun your statement when there are fewer active users.Ask the database administrator to check the lock and memory configuration for this instance, or to check for long-running transactions

Среда: SQL Server 2005 Standard Edition на Windows Server 2003 Standard Edition. Виртуализировано на виртуальной машине — с 8 ГБ ОЗУ. Автоматические приложения обрабатывают данные — считывают необработанные данные и записывают результаты в базу данных. Эти приложения получают сообщение об ошибке и аварийно завершают работу. (Есть также запланированные задания по резервному копированию базы данных и обслуживанию индексов.)

Такая же ошибка никогда не наблюдалась в аналогичной системе с корпоративным выпуском sql server 2005 и корпоративным выпуском Windows 2003.

Я уже искал в Интернете и нашел некоторые ответы. Но напр. SQL Server не может получить LOCK ресурс в это время - что делать? не помогло в моем случае

Один источник предложил проверить:

SELECT request_session_id, COUNT (*) num_locks
FROM sys.dm_tran_locks
GROUP BY request_session_id 
ORDER BY count (*) DESC

За один сеанс получилось 10.

Настройки памяти и блокировки находятся в настройках по умолчанию.

Моя текущая идея состоит в том, чтобы очистить большую часть данных, которые устарели и могут быть удалены.

Есть ли у кого-нибудь другие идеи, как решить проблему блокировки ресурсов? Что именно является его причиной? Позволяет ли стандартная версия SQL Server меньше ресурсов - проблема связана с версией сервера sql? Как решить проблему?


person Sqluser    schedule 03.03.2014    source источник
comment
Обратитесь в службу поддержки.   -  person Remus Rusanu    schedule 03.03.2014


Ответы (1)


Функция автоматического сжатия имела несколько блокировок в каталоге базы данных. Автосжатие также фрагментировало первичный ключ таблицы после перестроения первичного ключа.

Отключение функции автозапуска решило проблему.

person Sqluser    schedule 26.03.2014