В SQL не получается изменить настройку параметра Блокировки в значение 0
 
Описание ошибки:
При попытке в SQL Server Managiment Studio в настройках сервера изменить параметр "Блокировки" в значение 0, после того, как было установлено другое значение, программа не позволяет это сделать. Так же в статье описано, как можно интерактинво изменить значнеие параметра "Блокировки" группы настроек "Параллелизм" в SQL.

Найденные решения:

В связи с тем, что в одной из баз клиента при работе базы возникала ошибка "Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Экземпляру ядра СУБД SQL Server не удается получить ресурс LOCK в данный момент времени." то в соответствии с рекомендациями Microsoft, который является разработчиком программного продукта SQL, было принято решение в "Свойствах" сервера в SQL Server Managiment Studio в списке "Дополнительных" настроек изменить значение параметра "Блокировки" в рекомендуемое значение 20000 - описание как настроить бло­ки­ро­вки (па­ра­метр кон­фи­гу­ра­ции сер­ве­ра).

Как изменить параметр "Блокировки" в SQL? В отличие от рекомендации в статье Microsoft, где это нужно сделать через выполнения запроса к серверу, есть интерактивны способ. Для этого запускаем SQL Server Managiment Studio. В обозревателе объектов правой кнопкой мыши на названии сервера вызываем контекстное меню, в котором нажимаем пункт "Свойства".

что делать, sql не дает изменить параметр блокировок
Рис. 1. Переход к свойствам сервера в SQL Server Managiment Studio.

Откроется окно "Свойства сервера". Выбираем страницу "Дополнительно". Находим группировку страницы "Параллелизм" и устанавливаем значение настройки "Блокировки" отличное от 0.

Нажатие на изображении увеличит его
sql не дает изменить параметр блокировки в значение 0
Рис. 2. Изменение значение "Блокировки" параллелизма в SQL.

После изменения значения нажимается кнопка "ОК". Изменения сохраняются.

Но, к сожалению, данное изменение настройки не помогло. Ошибка не только не ушла, но и стала еще чаще возникать так, что работа пользователей в базе стала не возможной.

Потребовалось вернуть значение параметра "Блокировки" параллелизма в прежнее значение. Но это оказалось проблемой. По какой-то неопределенной причине SQL не позволял изменить значение параметра на 0 описанным выше простым способом. Точнее изменят давал, но не давал установить именно значение 0. А программа самостоятельно устанавливала, изменяя 0 на значение 5000.

sql не дает установить параметр параллелизм блокировки в значение 0
Рис. 3. При попытках изменить значение параметра на 0 SQL устанавливает значение 5000

Таким образом получалось, что снова в интерактивном режиме не получается изменить значение параметра. Попытки были сделать это при остановленной службе сервера SQL но так же безуспешно.

Была предпринята попытка воспользоваться указанием которое предлагала Microsoft на странице по изменению параметра блокировок. Использованием запроса следующего содержания, с указанием значения параметра 'locks' не 20000, как в исходном примере, а наоборот - 0.

Use AdventureWorks2012 ;
GO
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'locks', 0;
GO
RECONFIGURE;
GO

Для этого в дереве "Обозреватель объектов" правой кнопкой мыши было вызвано контекстное меню и в нем переход по пункту "Создать запрос".

sql advanced setting lock return to zero
Рис. 4. Создание запроса к серверу в SQL Server Managiment Studio

В открывшееся окно был вставлен код выполнения, взятый из руководства Microsoft - SQL руководство как настроить бло­ки­ро­вки как параметр параллелизма. Нажата кнопка "Выполнить".

sql change manually advanced setting locks
Рис. 5. Изменение параметра "Блокировки" (locks) через запрос.

И это помогло. Хотя в сообщениях присутствовала и предупреждающая информация. Все таки содержалась информация о том, что "параметр конфигурации locks изменен с 5000 на 0".

Нажатие на изображении увеличит его
sql параллелизм значение блокировки вернуть по умолчанию
Рис. 6. Результат выполнения запроса с целью изменения значения блокировок на 0.

Проверка свойств конфигурации сервера в интерактивном режим показал, что значение параллелизма "Блокировки" снова приняло значение 0.

Нажатие на изображении увеличит его

Рис. 7. Результат - значение "Блокировки" 0.

Таким образом не только была решена проблема того, как вернуть значение блокировок (locks) конфигурации сервера SQL в значение 0 но и была восстановлена работа баз 1С. Т.к. с прежним значением работа осуществлялась и стала возможной вновь с возвращением прежнего значения параметру.

Оцените, помогло ли Вам предоставленное описание решения ошибки?

© www.azhur-c.ru 2014-2025. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

18-07-2023

Журавлев А.С. (Сайт azhur-c.ru)

 
 

Здесь можно
приобрести лицензии

1С 8
​ и типовые решения

ural-rosaudit.ru - Аудит в сфере ЖКХ, www.ural-rosaudit.ru
azhur-blog.ru - мошенничество в интернете, www.azhur-blog.ru
info-compas.ru - каталог, инфокурсы, видеокурсы, видео курсы, обучение он-лайн, www.info-compas.ru
https://vk.com/effective_ideas - Группа вКонтакте Методы заработка и работы при помощи Интернет

 

Проверить аттестат
Cистема приема платежей, касса для сайта
Cистема управления контентом Santafox&trade. Санкт-Петербург, Ленинский проспект, д. 23 (812) 545-47-48
Яндекс.Метрика