Ошибка распределенного доступа к базе данных 1с системное фоновое задание

Содержание: 

1.         Варианты возникновения ошибки разделенного доступа

2.        Файловый режим работы: способы решения ошибки разделенного доступа

3.        Пути решения ошибки разделенного доступа в клиент-серверном варианте работы

4.        Зависшие фоновые задания разделенного доступа в клиент-серверном варианте 

1.  Варианты возникновения ошибки разделенного доступа

С ошибкой разделенного доступа в базе хотя бы раз сталкивался каждый разработчик. Обычно данную ошибку можно увидеть при принятии монопольных изменений конфигурации системы базы данных, при попытке выгрузки информационных баз или запуске тестирования и исправления информационной базы. Все эти операции требуют монопольный доступ к базе данных, то есть к базе не должны быть подключены пользователи. Далее мы рассмотрим варианты возникновения ошибки разделенного доступа и возможные пути их исправления:

Пользователи подключены к 1С

Для начала стоит проверить активные сеансы пользователей 1С. Количество активных пользователей можно посмотреть в конфигураторе: зайти в панель управления Администрирование, выбрать кнопку «Активные пользователи». И попросить их выйти из 1С. Помимо этого, информацию об активных сеансах можно увидеть в окне ошибки, но при большом количестве активных пользователей, информация будет не о всех активных сеансах.

У пользователя запущена 1С, но не введен пароль

Файловая база данных обычно содержит в себе подобную ошибку. Для решения данной проблемы следует запустить диспетчер задач, найти подобные процессы и, с его помощью, принудительно их завершить. Так как пользователь для работы с БД не авторизован, этот сеанс не отображается в списке активных пользователей, но соединение с базой при этом уже установлена. Следовательно, информационное сообщение так же, не будет нам полезно.

Зависший сеанс

Пользователи закрыли все свои окна 1С 8.3, но ошибка все еще осталась, в таком случае, вероятно, остались зависшие сеансы. В таком случае требуется принудительное завершение работы подобных сеансов. Последующие действия следует выполнять только после того, как испробовали методы описанные выше.  

2.  Файловый режим работы: способы решения ошибки разделенного доступа

— С помощью Диспетчера задач.

После завершения активных сеансов в файловом режиме работы, не сохраненная информация пользователей будет утеряна. Завершить сеансы этим способом можно вызвав диспетчер задач (диспетчер задач можно вызвать комбинацией клавиш Ctrl+Alt+Delete), выбрать нужные процессы(1Сv8.exe или 1Сv8c.exe), после этого нажать кнопку снять задачу.

— Перезагрузка сервера, на котором установлена 1С.  

3.  Пути решения ошибки разделенного доступа в клиент-серверном варианте работы

Завершить активные сеансы поможет консоль администрирования сервера, находим в ней нужную нам базу и заходим в меню «Сеансы».

Выделяем мешающие нам сеансы и завершаем их через пункт контекстного меню «Удалить» или соответствующую кнопку на панели.

— Если не удалось удалить сеансы, используя консоль, то пробуем перезапустить службу Агент сервера 1С Предприятия 8.3.

— Если не получается удалить соединение, можно попробовать это сделать средствами в 1С СУБД. К примеру, в MS SQL для 1С, можно открыть Management studio и написать запрос к нужной базе с использованием метода kill <ID>, где ID – номер соединения с СУБД, который так же можно увидеть в консоли администрирования.

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

4.  Зависшие фоновые задания разделенного доступа в клиент-серверном варианте работы

В подобном случае, при повышенной пиковой нагрузке на сервер, сеансы фоновых заданий могут отрабатывать медленно или даже зависать, что так же влечет за собой возникновение данной ошибки.

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

Попробовать завершить эти сеансы можно следующими методами:

— Завершить сеанс и обновить список активных соединений, для проверки, не запускаются ли они заново.

— Среди свойств базы найти флажок «Блокировка регламентных заданий включена», после этого снова надо попытаться завершить задание.

В итоге при возникновении данной ошибки, надо отталкиваться именно от причины ее возникновения, исходя из этого, производится выбор способа ее решения. Именно поэтому не стоит переходить сразу к радикальным методам, перегружать сервер, особенно, если есть возможность решить все более «щадящим» способом. Данные варианты решений уменьшат вероятность ошибок и повреждения данных таблиц информационной базы.

Специалист компании «Кодерлайн»

Марк Романенков

Фоновое задание не дает обновится

Я
   aleks100

30.11.19 — 16:12

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

Обратитесь к системному администратору.

Подробности ошибки:

Ошибка разделенного доступа к базе данных

База данных заблокирована:

компьютер: DESKTOP-MH30GLI, сеанс: 12, начат: 30.11.2019 в 21:01:30, приложение: Фоновое задание

конфигурация рарус комплексный учет питания

Что это может быть?

   ДенисЧ

1 — 30.11.19 — 16:14

Не отрубил задание какое-то.

Консоль заданий что говорит?

   vde69

2 — 30.11.19 — 16:22

надо смотреть консоль сервера, вероятно это какое-то регламентное задание…

бывали случаи когда в такой ситуации помогала блокировка рег заданий в консоли сервера (на время обновления)

   Провинциальный 1сник

3 — 30.11.19 — 16:22

Да, а кстати — как правильно обновиться, если в базу пользователи лезут как мухи на мёд? Отключить вход не вариант — тогда и администратор не зайдет первым запуском для выполнения процедур обработки данных при обновлении. А иначе — процедура обновления натыкается на ошибку невозможности установки монопольного режима. Только хакерство на ум приходит с правилами брандмауэра, временно тупо блокировать трафик сервера 1с от всех, кроме администратора 1с.

   aleks100

4 — 30.11.19 — 16:34

конфигурация в файловом варианте

   aleks100

5 — 30.11.19 — 16:36

(1) первый запуск после обновления

   aleks100

6 — 30.11.19 — 16:42

выполняется задание слияние индекса Слияние индекса полнотекстового поиска доступа

   aleks100

7 — 30.11.19 — 16:43

как узнать какое именно фоновое задание блокировало?

   ДенисЧ

8 — 30.11.19 — 17:13

(7) см (6)

   aleks100

9 — 30.11.19 — 17:55

(8) закончил это задание, посмотрел  в обработке регламентных заданий и потом только обновилось нормально

   aleks100

10 — 30.11.19 — 17:55

это задание видимо блокировало

   rphosts

11 — 30.11.19 — 18:54

(3) вариант 1: зашёл, заблокирвоал другим вход, снёс пассажиров из консоли.

варант 2: заблокировал с кодом разблокировки, зашёл с кодом разблокировки, снёс пассажиров из консоли

   Провинциальный 1сник

12 — 30.11.19 — 18:58

(11) Если заблокировать начало сеансов — то фоновое задание обновления ИБ не запустится. Пробовал.

   rphosts

13 — 30.11.19 — 19:08

(12) впихуй в код процедуры ПриНачалеСеанса или как там его… ну например если это не BackGround и время входа ну пусть 22:00 — 04:00 — Отказ = Истина.

   Провинциальный 1сник

14 — 30.11.19 — 19:13

(13) Не, ну это уж слишком. Речь о типовом обновлении типовой конфигурации. Как-то не продумано это.

   rphosts

15 — 30.11.19 — 19:15

(14) вы не вкурили расширения?

   Провинциальный 1сник

16 — 30.11.19 — 19:18

(15) То есть, чтобы установить штатное обновление, нужно предварительно расширение писать с костылями?

   Провинциальный 1сник

17 — 30.11.19 — 19:22

Реально не хватает в сервере 1с специального «режима обслуживания», когда запускаются только сеансы администратора и фоновые задания, иницированные им. А то они гордятся что от монопольного режима ушли, а толку то? Всё равно он нужен. Ну или пусть пишут процедуры обновления без требования включения монопольного режима попеременно с фоновыми заданиями.

   rphosts

18 — 30.11.19 — 19:24

(16) в типовых есть ограничение на время работы пользователей?

   Aleksey

19 — 30.11.19 — 19:39

(18) Так вроде бы речь не о пользователях. Их выкинуть можно.

А о фоновых заданиях. Например заходишь обновиться а там индекс ППД висит.

Т.е. две проблемы.

1. нет галки монопольно, когда блокируются фоновые задания

2. Обновление ИБ реализовано через фоновое задание, т.е. если даже заблокируешь фоновые задачи, автоматом блокируется процедуры из обновления.

И вот так и живем. Сидишь как дурак, ждешь когда все фоновые из базы свалят, чтобы была возможность поймать окно и обновиться

  

Aleksey

20 — 30.11.19 — 19:41

(7) консоль заданий, там можно посмотреть какое задание выполняется в данный момент. В типовых эта та обработка в которой список регламентных задач и на второй вкладки там формируются отчеты по фоновым, в т.ч. по тем кто сейчас выполняется

Столкнулся с новым (для меня) поведением платформы. У пользователя серверная 8.3.9.2033 1С:ЗарплатаИУправлениеПерсоналом 2.5.120.1. 1. Выполняем обновление конфигурации (в пакетном режиме). 2. Далее выполняем обновление базы данных (в пакетном режиме). 3. Сразу после пункта 2 пытаемся подключиться к базе (через COM) и получаем ошибку «разделенного доступа к базе данных, база данных заблокирована:, компьютер: server, пользователь: СкрытоеИмяПользователя, приложение: фоновое задание.». И это при том что все имеющиеся перед обновлением фоновые задачи завершены, а запуск новых запрещён. Исследуем журнал регистрации и обнаруживаем, что во время выполнения второго пункта платформа запускает некоторое системное фоновое задание в данных у которого написано «UpdateConfigurationLicense». Я  догадываюсь, что это платформа выполняет какие-то манипуляции для обновления лицензии, контроля и чего-то там ещё. Но какого же чёрта она это делает через механизм регламентных заданий и при этом не считается с запретом их выполнения. В модуле самой конфигурации поиск UpdateConfigurationLicense ничего не даёт, а значит это механизм на уровне платформы. Если у кого есть доп. информация по этому механизму прошу поделиться, потому что почти не гуглится. Меня главным образом волнует: — это общее поведение платформы для всех конфигураций или нет — эта особенность была всегда или появилась с какого-то релиза — она похоже работает только для серверных? — может какой-то ключик существует, чтобы платформа (при запуске с ключом /UpdateDBCfg) дожидалась таки окончания выполнения этого системного задания UpdateConfigurationLicense

То есть главная проблема в том, что мы запускаем платформу с ключиком UpdateDBCfg, она отрабатывает, но на самом деле база остаётся ещё на какое-то неизвестное время заблокированное для выполнения этого фонового задания.

Выполняется (у пользователя) это задание почти всегда ровно минуту.

Я прошу по возможностей поискать это фоновое задание в своих базах. Было бы здорово узнать — может ли оно выполняться дольше, чтобы знать какую паузу делать.

М-да, никто не обещал в будущих релизах платформы совместимость с Обновлятором. Я бы делал паузу в минуту и проверял снова. И так пока не получится.

Могу предположить, что проверяется наличие подписки ИТС. И если пустить её в интернет, фремя ожидания сильно сократится.

Да, нужна пауза. Теперь осталось точно выбрать момент и значение паузы. Бесконечно проверять тоже нельзя — причин по которым нельзя подключиться к базе может быть много. Хотя в данном случае конечно можно анализировать текст ошибки, но это всё ИМХО не совсем правильно. Но придётся. На самом деле тут всё хитрее скорее всего (есть какие-то доп. условия для запуска этого задания сервером 1с). Так как из множества пользователей пока только один столкнулся с таким поведением платформы. нет, серверная. С файловой мне кажется такой проблемы нет, так как здесь именно сервер 1с после обновления БД запускает это фоновое задание.

Здравствуйте, а если у 1с поинтересоваться?

вот тоже об этом думал Но у меня нет доступа к их партнёрскому форуму. А в рамках канала ошибок они даже разбираться не будут. Если у кого есть возможность задать им вопрос на партнёрском форуме — спросите пожалуйста. Буду очень признателен. Для себя я сейчас вот что уяснил: — это задание запускается в конце (за секунду) до окончания выполнение обновление базы данных — блокирует на это время доступ к базе — работает на серверных ОС Есть ещё какие-то условия возникновения этого задания, но я их пока не знаю. В принципе мне этих знаний уже достаточно, чтобы учесть ситуацию в обновляторе, но конечно хотелось бы полной картины.

Напишите, полностью вопрос

Можете ли вы прояснить поведение сервера 1С в следующей ситуации: При пакетном обновлении базы данных (ключик /UpdateDBCfg) сервер 1С запускает в базе некое фоновое задание (в журнале регистрации оно не имеет имени, но в данных у него написано «UpdateConfigurationLicense»). Это задание блокирует доступ к базе втечение 1 минуты после того как окончилась пакетное обновление базы данных (запущенное через ключик /UpdateDBCfg). Для более полноценной интеграции с платформой очень интересует: — условие возникновения этого фонового задания — почему оно возникает несмотря на то, что на сервере 1С в этот момент запрещен запуск новых регламентных заданий — можно ли сделать предположение, что это задание не может длиться дольше 1 минуты (ну или  есть ли какое-то разумное ограничение по времени его выполнения).

Подобный вопрос уже задавали 13.04.2017 на партнёрском: (Но ни одного ответа там нет) Зарплата и управление персоналом (ЗУП и ЗУП КОРП ред. 3) ?  Ошибка при обновлении на релиз 3.1.2.153. Что такое UpdateConfigurationLicense? Возникает ошибка при обновлении конфигурации «Зарплата и управление персоналом, редакция 3.1» с релиза 3.1.1.116 на релиз 3.1.2.153 на платформе «1С:Предприятие 8.3 (8.3.8.1964)». При первом запуске в режиме тонкого клиента запускается обновление данных в фоновом задании «Фоновое задание, сеанс 6», которое далее завершается по ошибке, из-за запуска второго фонового задания «Фоновое задание, сеанс 7». Предполагаю, что «Фоновое задание, сеанс 7» забирает монопольный режим у «Фоновое задания, сеанс 6». Причина запуска «Фоновое задание, сеанс 7» неизвестна. Во вложении скриншоты записей журнала регистрации. Подскажите пожалуйста, верно ли предположение о причине ошибки и в чем причина запуска второго фонового задания с описанием данных «UpdateConfigurationLicense»?

Тэги:

Комментарии доступны только авторизированным пользователям

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

1

2

Показывать по
10
20
40
сообщений

Новая тема

Ответить

alx_b

Дата регистрации: 28.04.2011
Сообщений: 1

Здравствуйте! Делаю Администрирование — Выгрузить информационную базу. Подвисает на несколько секунд и потом пишет «Ошибка разделенного доступа к информационной базе, активен сеанс» и показывает мой сеанс конфигуратора. В мониторе кроме конфигуратора ничего нет. Различные задания тоже не запущены. Платформа 8.2, последняя, база на сервере, MS SQL 2005. Не работает только эта база, остальные в порядке. Если пробовать с другого компьютера, все также. Как с этим бороться? Пробовал перезапускать службы SQL и 1C, не помогло.

Prikum

активный пользователь

офлайн

Дата регистрации: 18.02.2002
Сообщений: 20883

Сохраните средствами SQL, так будент надежнее.

BelikovS

Дата регистрации: 05.03.2007
Сообщений: 1701

> Сохраните средствами SQL, так будент надежнее.<br>Только для случая восстановления на SQL …

alx_b

Дата регистрации: 28.04.2011
Сообщений: 1

Хочу сделать копию в файловом режиме, т.е. этот вариант не подходит. Пробовал делать копию на SQL, а потом выгружать уже оттуда, та же ерунда.

Prikum

активный пользователь

офлайн

Дата регистрации: 18.02.2002
Сообщений: 20883

В файловом варианте достаточно просто скопировать файл. Выгрзука в dt помогает, только если база безпроблемная, если есть какие то проблемы в самой базе, то выгрузка модет их только усугубить, вплоть до невозможности потом восстановить базу.

BelikovS

Дата регистрации: 05.03.2007
Сообщений: 1701

На копии пробовали сделать тестирование и исправление?<br>Попробуйте создать новый кластер, отключите в нем регламентированные и прочее, можно еще сделать несколько процессов. И попробуйте с него выгрузить.

alx_b

Дата регистрации: 28.04.2011
Сообщений: 1

Тестирование и в оригинале проходит без ошибок.

alx_b

Дата регистрации: 28.04.2011
Сообщений: 1

Имел в виду копию из файл-серверного в файловый.

Prikum

активный пользователь

офлайн

Дата регистрации: 18.02.2002
Сообщений: 20883

> Имел в виду копию из файл-серверного в файловый.<br>Это одно и тоже, а вот клиент-серверный это другое. Но в любом случае вам надо делать выгрузку в dt.

leska

Дата регистрации: 23.11.2007
Сообщений: 16

посмотрите список выполняемых задач с помощью обработки с диска итс : консоль заданий.

Читают тему:

  • Ошибка распределения памяти проекта segnetics
  • Ошибка распределения памяти win 10
  • Ошибка распределения памяти ultraiso
  • Ошибка распределения нагрузки при входе 88 sap что означает
  • Ошибка распределения доступа к базе данных 1с