Ошибка файловой операции 1cv8 cdn. Начало сеанса с информационной базой запрещено

Вступление

Небольшие организации обычно работают с базой данных в файловом режиме. Это недорогой (не требуется приобретение сервера 1с) способ организации совместной работы нескольких пользователей. Однако он имеет серьезные недостатки. Главный из них - сетевая работа с базой данных в режиме разделенного доступа. В результате скорость работы с файлом ограничивается скоростью сети, кроме того, при совместном доступе к сетевому ресурсу Windows не в лучшую сторону меняет настройки кэширования данных этого файла, что резко снижает скорость записи. При аварийном прекращении работы сети во время записи данных может произойти порча базы, часто необратимая.
К счастью, при реализации модели управляемых форм начиная с версии 8.2 фирма 1с предоставила возможность работы с файловой базой через веб-сервер. У этого способа есть следующие преимущества:
1. Намного выше скорость работы с данными, поскольку не требуется передача «сырых» данных по сети во время обработки.
2. База не боится разрывов сети во время записи, поскольку непосредственная работа с файлом данных происходит через модуль веб-сервера. Разрыв передачи данных по сети может вызвать лишь временное прекращение работы пользователей, но не порчу данных в базе и не тем более не может вызвать разрушение самой базы.
3. Нетребовательность к скорости сети и к быстродействию клиентских компьютеров. Это обеспечивает легкое масштабирование - путем апгрейда лишь одного сервера можно существенно повысить производительность работы.
4. Возможность работы как в тонком клиенте 1с, так и в веб-браузере.
5. Более высокая защищенность от утечки данных, так как пользователи не имеют непосредственного файлового доступа к базе.

Однако при работе в таком режиме можно столкнуться со следующей проблемой. Дело в том, что модуль 1с для веб-сервера — однопоточный. Соответственно, все пользователи 1с, подключенные к одному веб-серверу, встают в единую очередь серверных вызовов. Если серверные вызовы длительные, что возможно при значительных объемах данных в базе или при выполнении сложных запросов, то это может полностью парализовать работу других пользователей: они будут вынуждены ждать.

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

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

Описание работы программы

Программа выполняет ретрансляцию входящих tcp-соединений с указанного «главного» порта на один из портов, на которых запущен веб-сервер. Запуск экземпляров веб-сервера Apache происходит автоматически при старте программы. Для обеспечения этого программа предварительно создает временные конфигурационные файлы, которые указывает при запуске экземпляров веб-сервера.

Ретрансляция соединений происходит следующим образом: Поступившее соединение проверяется по таблице активных трансляций. Если трансляция от ip-адреса источника уже существует, то используется экземпляр веб-сервера, связанный с этой трансляцией и соединение ретранслируется на соответствующий порт Apache. Если же поступившее соединение в таблице трансляций не найдено — то оно направляется на экземпляр веб-сервера с наименьшим (или нулевым) количеством активных трансляций, при этом информация об этом сохраняется в таблице трансляций. Трансляции, время жизни которых превысило таймаут сессии (25 минут по умолчанию), считаются неактивными и удаляются из таблицы трансляций. Экземпляры веб-сервера перезапускаются автоматически в фоновом режиме таким образом, чтобы минимизировать время недоступности сервиса. Перезапуск веб-серверов позволяет освободить память.

Необходимо особо отметить следующие нюансы:
С рабочим процессом веб-сервера ассоциируется именно клиентский компьютер, а не клиентский сеанс 1С:Предприятия. Соответственно, если с одного компьютера будет несколько подключений — они все будут обслуживаться одним веб-сервером. Однако, это более эффективно, чем работа всех пользователей всей локальной сети в одном серверном процессе.
Для сервера терминалов данное решение будет плохо применимо по причине, указанной выше. Все соединения с сервера терминалов будут идти от одного IP-адреса, соответственно, они будут транслироваться на один рабочий процесс веб-сервера.
Необходимо отключать использование прокси-сервера в клиентских приложениях, поскольку в этом случае все клиенты будут подключаться к программе от адреса прокси-сервера. При использовании тонкого клиента это решается ключом запуска /NoProxy, при использовании веб-клиента — через настройки браузера.
Все имена и пути в ini-файле должны быть заданы в латинском алфавите
Перед выполнением действий, требующих установки монопольного режима (удаление помеченных объектов, тестирование и исправление и т.п.), необходимо останавливать программу МикроСервер УПФ (сервис), и выполнять эти действия через обычное подключение к базе. Это связано с особенностями механизма установки монопольного режима при многопользовательском доступе через веб-сервер, который не полностью с данной технологией.
Данное решение ни в коей мере не затрагивает лицензирование 1с, оно не увеличивает и не уменьшает потребностей в клиентских лицензиях.

Системные требования

1C версии 8.2 и выше (рекомендуется не ниже 8.3.5), с установленным тонким клиентом для файлового режима и с модулями расширения веб-сервера.
ОС Windows XP, 7, 2003Server
Apache 2.2
Права администратора для установки и настройки программы
Разрешения брандмауэра на подключение к используемым портам
Наличие достаточного объема свободной оперативной памяти для запуска заданного количества веб-серверов с модулями 1с. Потребность в памяти определяется прикладным решением (конфигурацией). В частности, для БП 3.0 следует планировать минимум 0,5 Гб на один экземпляр веб-сервера.

Запуск и настройка

Программа может быть запущена как обычное консольное приложение, так и быть установлена как служба Windows с именем apache_1c_redir. Предпочтительнее работа в режиме службы. Для установки программы как сервиса нужно запустить redir_1c.exe с ключом "-i" или выбрать соответствующий элемент из группы программы в меню Пуск. Для удаления службы используется ключ "-r".
Параметры программы задаются с помощью файла redir_1c.ini, который находится в каталоге программы. Далее приведено описание параметров ini-файла. В значениях параметров не допускаются буквы национальных алфавитов, все пути к файлам должны быть заданы латиницей!
MAIN_PORT
Задает tcp-порт, на котором программа принимает соединения от клиентов. Должен быть свободен, то есть, на нём не должен работать какой-то другой сетевой сервис. Значение представляет собой целое число — номер порта.
MAIN_IP
Задает ip-адрес, на котором программа принимает соединения от клиентов. Если параметр не указан, то программа принимает запросы на все IP-интерфейсы компьютера.
SLAVE_PORTS
Задает список портов, которые будут использоваться для автоматического запуска экземпляров веб-сервера Apache. Порты должны быть свободны. Значение представляет собой набор целых чисел — номеров портов, разделенных запятой. Количество портов определяет количество экземпляров веб-сервера. В Lite-версии используются первые 3 порта, остальные игнорируются. Количество портов (количество экземпляров Apache) не ограничивает количества пользователей, оно лишь влияет на возможность параллельно выполнять серверные вызовы 1с.
HTTPD
Исполняемый файл веб-сервера Apache. Значение представляет собой строку, задающую путь к файлу httpd.exe установленного на данном компьютере веб-сервера Apache, без кавычек.
WEB_MODULE
Модуль веб-сервера для 1с. Значение представляет собой строку, задающую путь к файлу wsap22.exe установленной на данном компьютере платформы 1с, без кавычек.
BASE
Параметр описания информационной базы. В отличие от других параметров, эти параметры могут повторяться в файле несколько раз — один параметр для каждой публикуемой информационной базы.
Значение представляет собой имя базы для публикации и путь к базе, разделенные точкой с запятой. Имя базы для публикации — строка из латинских букв и цифр без пробелов и без кавычек. Путь к базе — полный путь к каталогу базы данных, без кавычек.
WORK_DIR
Указывает рабочий каталог программы, куда программа сохраняет на время работы файлы настройки веб-серверов, а также выводит таблицу трансляций. Может быть задан как полным путём без кавычек, так и просто в виде имени подкаталога в каталоге программы. Если параметр не задан — программа создает временный каталог в системном каталоге временных файлов, удалив его по завершении работы. Если каталог указан и он при этом не существует — программа создаст его и удалит после успешного завершения работы.
LOG_FILE_NAME
Указывает лог-файл, куда программа пишет события. Параметр может быть задан как полным путем без кавычек, так и просто в виде имени файла в каталоге программы. Если параметр не задан - сообщения программы выводятся на консоль. Следует указывать, если программа запускается как служба.
LOG_LEVEL
Задает уровень детализации событий, 0 — минимальная детализация, 1 — полная. При полной детализации фиксируется начало и завершение каждого tcp-соединения. Полная детализация при использовании лог-файла может привести к повышенной нагрузке на дисковую подсистему и к расходованию свободного места на диске.
TIMEOUT
Задает время в секундах, прошедшее после последней активности клиентского IP-адреса, после которого программа может считать клиентский сеанс закрытым, и соответственно перестанет учитывать его в счетчике трансляций на конкретный порт. По умолчанию - 25 минут. Не рекомендуется задавать меньшее значение без особой необходимости и тестирования на конкретном решении.
TEMP_DIR
Указывает каталог для временных данных сеансов 1с. Если параметр не задан — 1с использует для временных данных каталоги информационных баз. Рекомендуется указывать для предотвращения "засорения" каталогов баз ненужными временными файлами.
VRD_POOL_OPTIONS
Предназначена для 1с версии 8.3 и выше. Задает строчку с дополнительными параметрами, которые указываются в файле публикации информационной базы (.vrd), в том виде, как они должны быть записаны в формате xml-файла в разделе pool. Пример:
VRD_POOL_OPTIONS=size="10000" maxAge="300" attempts="5" attemptTimeout="500" waitTimeout="500"
Порядок установки программы
Запустите инсталлятор, подтвердите согласие с лицензионным соглашеним, выберите каталог, куда будет установлена программа. При необходимости работы в демо-режиме переименуйте файл демо-ключа redir_1c.key.demo в redir_1c.key (если в каталоге программы есть рабочий ключ — предварительно сохраните или переименуйте его). Задайте параметры программы в ini-файле. Проверьте корректную работу программы её запуском и подключением к ней из веб-браузера через адресную строку вида «http://_сервер_:_порт_/_база_». При необходимости установите программу как службу Windows.

Ограничения бесплатно распространяемой версии программы

Если программа при запуске не находит корректный ключевой файл (redir_1c.key), она запускается в Lite-режиме. При этом количество запускаемых экземпляров веб-сервера ограничено 3, количество сеансов пользователей не ограничивается.
Если программа находит демонстрационный ключевой файл - она запускается в демо-режиме. При этом отсутствует дополнительное ограничение на количество запускаемых экземпляров веб-сервера, но время работы программы ограничено 4 часами. По истечении этого времени программа будет завершена, соответственно, сеансы пользователей будут прерваны. Каждый последующий запуск начинает отсчет заново.

Бреднев Александр, 2014

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

Давайте же подробно рассмотрим содержание полученного диалогового сообщения:

Строка 1.А «Начало сеанса с информационной базой запрещено.» представляет собой стандартную запись, указывающую на установленную блокировку входа пользователей в программу. При такой блокировке в каталоге информационной базы автоматически создаётся специальный файл с расширением «.cdn» (подробнее: см. следующие разделы).

В строке 1.Б обычно указывается причина, длительность блокировки, а так же другая полезная информация. В зависимости от того, кем или чем (в случае системы) установлена блокировка входа, а так же для какой цели, информация в этом блоке может быть разной. Строка «Резервное копирование» является стандартной записью для ручного либо регламентного резервного копирования (в этом случае так же характерна строка «Для выполнения резервного копирования.») информационной базы средствами 1С Предприятие.

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

В строке 2 приведена подсказка, как можно запустить программу из-под командной строки Windows, если Вам известен так называемый «код разрешения» (см. следующий шаг).

В строке 3 поясняется ход процесса и действие кнопок.

Шаг 2. Решение как снять блокировку и войти в базу 1С 8.3

Блокировки сеансов условно можно классифицировать следующим образом:

  • Запланированные. Когда вручную или автоматически была запущена блокировка сеанса, обслуживающая плановый процесс в базе 1С (резервное копирование, регламентное задание, обновление);
  • Прочие, ошибочные. Когда блокировка установлена в результате ошибочных действий пользователя или возникших ошибок самой системы, когда она автоматически не снимает ранее установленную блокировку. Например, был запущен процесс резервного копирования, но пользователь его прервал, принудительно закрыв программу.

Способ 1

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

Таким образом, простым решением ошибки запуска программы из-за блокировки сеанса будет являться удаление файла 1Cv8.cdn.

Однако пользователю следует предварительно задаться вопросом «Ведь, если блокировка сеансов установлена – значит это чем-то обусловлено?». Быть может, другой пользователь с административными функциями (далее – администратор) запустил в 1С 8.3 Бухгалтерия действительно важное задание или обработку, не терпящие одновременного нахождения нескольких пользователей в базе.

Способ 2

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

  • “C:\Program Files (x86)\1cv8\common\1cestart.exe” – путь к программе запуска 1С Предприятия 8.3;
  • ENTERPRISE – обозначает, что программа запустится в пользовательском режиме, т.е. в режиме 1С Предприятие;
  • /F”F:\Базы1С\Бухгалтерия” – обозначает файловую информационную базу (параметр /F) и путь к ней (адрес серверной базы указывается в параметре /S);
  • /С Разрешить Работу Пользователей – необязательный параметр: если установлен, то система не запускается, но блокировка при этом снимется (уничтожится файл блокировки), впоследствии пользователям можно будет заходить в информационную базу.

Если параметр не установлен, то разрешается вход конкретному пользователю, но блокировка не снимается. Полную разблокировку этот пользователь может сделать в пользовательском режиме, пройдя в панель Поддержка и обслуживание (раздел Администрирование – группа команд Настройки программы – команда Поддержка и обслуживание:

И вызвав форму Блокировка работы пользователей по одноимённой команде:

В открывшейся форме снять блокировку сеансов можно нажатием кнопки Снять блокировку, где /UC12345 – в параметре /UC указывается код разрешения (12345). Названия параметров пишутся на английском языке.

Более подробно о параметрах командной строки смотрите в справке 1С 8.3 Предприятия.

Способ 3

Существует альтернативный и ещё более простой для пользователя приём использования вышеприведённых параметров запуска информационной базы (далее – ИБ) – есть возможность прописать нужные в свойствах интересующей базы данных.

1. В окне программы запуска (пометка «А») выделяем заблокированную базу данных и нажимаем кнопку Изменить, после чего откроется окно редактирования свойств ИБ (пометка «Б»):

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

Обратите внимание: когда происходит автоматическое резервное копирование (непосредственное либо в составе другой процедуры, например, при автоматизированном обновлении), система блокирует информационную базу 1С 8.3 и ставит стандартный код разблокировки «РезервноеКопирование ».

Поэтому, если процедура «сорвалась» и блокировка базы осталась, но нет возможности удалить cdn-файл, тогда можете при запуске ИБ использовать параметр: /UCРезервноеКопирование.

3. Нажимаем кнопку Готово и возвращаемся к окну программы запуска, где запускаем ИБ по кнопке 1С:Предприятие. Таким образом, ошибка “Начало сеанса с информационной базой запрещено. Резервное копирование” устранена:

Если 1С 8.3 Предприятие функционирует в клиент-серверном варианте, но пользователь не обладает правами доступа и необходимыми знаниями по администрированию баз данных в таком режиме, то в таком случае следует обратиться за помощью к администратору системы. Отметим лишь, что в клиент-серверном варианте помимо доступа через командную строку с дополнительными параметрами есть возможность убрать блокировку, используя утилиту администрирования кластера серверов 1С:Предприятия, а именно необходимо в свойствах нужной информационной базы убрать флаг Блокировка начала сеансов включена .

Анатомия файла блокировки 1Cv8.cdn

Любознательные могут заглянуть внутрь создаваемого при блокировке сеансов файла 1Cv8.cdn – это простой текстовой файл, который можно открыть соответствующим редактором Блокнот:

Текст в файле обрамлён фигурными скобками, в которых перечислены следующие разделённые запятыми параметры блокировки:

  • 1 (0) – признак установки блокировки (1 –установлена; 0 – выключена);
  • 20160706154700 – полная дата (дата + время) начала блокировки сеанса, в нашем случае это 06 июля 2016 года 20:00:00;
  • 20160706154700 – полная дата (дата + время) окончания блокировки сеанса, в нашем случае это 06 июля 2016 года 20:00:00 (если дата окончания не указана, то по умолчанию в параметр заносится значение 00010101000000);
  • Далее следует текстовый параметр, где в двойных кавычках размещён вспомогательный текст, отображаемый пользователю в диалоговом окне;
  • «123» – указан код разрешения.

Как видим, в файле прописаны все параметры, отображаемые в появляющемся информационно-диагностическом диалоговом окне.

На сайте Вы можете ознакомиться с другими бесплатными статьями и видеоуроками по конфигурации 1C Бухгалтерия (

Запустив один раз программу 1С, при старте я увидел ошибку «Начало сеанса с информационной базой запрещено. Резервное копирование». Я очень удивился — сам я блокировок не ставил. После небольшого анализа причина оказалась в «глюке» автоматического архивного копирования, которые встроены в (одна из подсистем ).

Ошибка выглядит следующим образом:

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

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

Получите 267 видеоуроков по 1С бесплатно:

Решение проблемы

Исправить проблему проще всего с помощью удаления файла 1Cv8.cdn (файл блокировки информационной базы) из папки с базой данных.

Например, на моём скриншоте выше расположение базы такое:

Необходимо зайди в эту папку, а затем найти и удалить 1Cv8.cdn.

Снятие блокировки с клиент-серверной базы 1С

Если у Вас есть доступ к консоли сервера, снять блокировку очень просто. Достаточно проследовать в свойства информационной базы и убрать флаг «Блокировка начала сеансов включена»: