Отключение зависших сеансов 1с (SQL)

Часто при работе с базами 1с в клиент-серверном варианте появляется проблема зависших сеансов. Из-за них не удается восстановить архив sql, выполнить какие-то обработки, требующие монопольный режим и т.д.

В первую очередь при такой проблемы мы идем на сервер 1с и в консоли администрирования удаляем сеансы или соединения:

Удаление сеансов в консоли администрирования сервера 1с
Удаление сеансов в консоли администрирования сервера 1с

Но этот способ не всегда помогает: на уровне sql могут оставаться сеансы, которые в данной консоли не будут отображаться.

И так, идем значит мы на сервер, где установлен MS SQL и заходим в SQL Server Management Studio” (если конечно администратор вам доверяет и дал к нему доступ). Создаем новый запрос и пишем простой, незамысловатый код:

Результат выполнения метода "sp_who"
Результат выполнения метода “sp_who”

Вариантов получения соединений много, можно так же использовать и такой вариант:

Что бы получить соединения только к интересующей нас базе, просто добавим условие для поля ‘db_name(dbid)’:

Теперь по сути нам осталось убить процессы (метод KILL) по значениям из колонки ‘spid‘:

В результате данного запроса сформируется команда ‘kill 52; kill 54;’ и затем произойдет её выполнение ‘exec’.

Вариантов исполнения может быть много:

Надеюсь благодаря этой статье вы хоть немного прокачаете свой скил в SQL. Ну и как заметка она пригодится.

Можно купить здесь предлагает множество услуг.

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *