Информационная база 1С изнутри: от создания до разбора блокировок
Содержание
Работа с базой данных в 1С 8.3 строится вокруг окна запуска: там базу создают кнопкой Добавить, открывают для учёта кнопкой 1С:Предприятие и обслуживают через Конфигуратор. Копии, проверка целостности и список активных пользователей живут в Конфигураторе в меню Администрирование, а пользователи и права — в самой программе, в разделе Администрирование → Настройки пользователей и прав.
Типичная ситуация: бухгалтер пришёл утром, а база не открывается или «висит» на проведении. Администратор в этот момент должен понимать, где лежит база, в каком она варианте и кто её держит. Всё это — платформенные вещи, они одинаковы для Бухгалтерии 3.0, ЗУП 3.1 и Управления торговлей 11.
Файловая или клиент-серверная база данных 1С: в чём разница
Любая информационная база 1С работает в одном из двух вариантов. От него зависит, как её копировать, как чинить и где искать причину зависаний.
| Признак | Файловый вариант | Клиент-серверный вариант |
|---|---|---|
| Где хранятся данные | один файл 1Cv8.1CD в папке базы | в СУБД: MS SQL Server, PostgreSQL и др. |
| Строка в окне запуска | File="D:\Bases\Buh" | Srvr="srv1c";Ref="buh" |
| Сколько пользователей | ориентировочно до 5–10 одновременно | десятки и сотни |
| Чем копировать | выгрузкой .dt или копией файла при закрытой базе | выгрузкой .dt или средствами СУБД |
| Что нужно поставить | только клиентскую платформу | сервер 1С, СУБД, серверные лицензии |
| Блокировки | на уровне всей таблицы | на уровне записей (управляемые блокировки) |
💡 Вариант видно прямо в окне запуска: выделите базу, внизу окна появится строка подключения. File= — файловая, Srvr= — серверная.
Файловая база хороша для небольшой фирмы и для учебных копий. Когда база вырастает до нескольких гигабайт и за ней одновременно сидят 10+ человек, учащаются ожидания на блокировках. Это сигнал переходить на сервер.
Как работает клиент-серверная схема
Клиент сначала обращается к агенту сервера 1С на порт 1540. Агент передаёт его менеджеру кластера (1541), а тот — рабочему процессу из диапазона портов. По умолчанию это 1560–1591, диапазон задают в свойствах рабочего сервера. Консоль администрирования подключается тоже через агент.
Если клиент не видит сервер, сначала проверьте, открыты ли в брандмауэре все три группы портов, а не только 1541.
Как создать базу данных в 1С и добавить её в список
Новая файловая база
- Запустите 1С, в окне запуска нажмите
Добавить. - Выберите
Создание новой информационной базы. - Отметьте создание из шаблона (типовая конфигурация, если её шаблоны установлены) или
Создание информационной базы без конфигурации— под загрузку.dtили под разработку. - Введите имя базы — так она будет называться в списке.
- Тип расположения:
На данном компьютере или на компьютере в локальной сети. - Укажите пустую папку. Для сетевой работы — общую папку на сервере, у всех пользователей должны быть права на запись.
- На последнем шаге оставьте параметры запуска по умолчанию и нажмите
Готово.
Новая база на сервере 1С
На шаге 5 выберите На сервере 1С:Предприятия и заполните поля:
- 🖥️ Кластер серверов
1С — имя сервера, при нестандартном порте через двоеточие:
srv1c:1641; - 🏷️ Имя информационной базы в кластере — латиницей, без пробелов;
- 🗄️ Тип СУБД, сервер БД, имя базы данных, пользователь и пароль СУБД;
- 📅 Смещение дат — для MS SQL Server ставьте
2000, иначе даты сдвинутся; - ✅ флажок
Создать базу данных в случае ее отсутствия.
Тот же результат даёт консоль кластера: узел Информационные базы → контекстное меню → Создать → Информационная база. Но в консоли база появится только в кластере, в список у пользователей её всё равно придётся добавить.
Подключение готовой базы
Если база уже есть, в мастере выберите Добавление в список существующей информационной базы и укажите путь или пару «сервер — имя базы».
Сам список баз хранится в файле %APPDATA%\1C\1CEStart\ibases.v8i. Его удобно раздать пользователям: скопируйте файл с настроенного компьютера, и у человека появятся те же базы с теми же названиями.
[Бухгалтерия ООО Ромашка]
Connect=Srvr="srv1c";Ref="buh_romashka";
Режимы запуска базы данных 1С и работа с конфигурацией
У базы два режима. 1С:Предприятие — для учёта: документы, отчёты, справочники. Конфигуратор — для администратора: обновление, копии, проверка, пользователи на уровне платформы.
В режиме 1С:Предприятие работают через один из клиентов:
- 💻 тонкий клиент — основной для управляемых конфигураций;
- 🌐 веб-клиент — через браузер, нужна публикация базы на веб-сервере;
- 🧱 толстый клиент — для старых обработок и отладки, в повседневной работе не нужен.
Клиент выбирают кнопкой Изменить → на последней странице мастера Основной режим запуска.
Что делать в Конфигураторе
| Задача | Путь |
|---|---|
| Открыть конфигурацию | Конфигурация → Открыть конфигурацию |
| Применить изменения к базе | Конфигурация → Обновить конфигурацию базы данных (F7) |
| Сделать копию | Администрирование → Выгрузить информационную базу |
| Восстановить из копии | Администрирование → Загрузить информационную базу |
| Проверить целостность | Администрирование → Тестирование и исправление |
| Посмотреть, кто в базе | Администрирование → Активные пользователи |
| Журнал событий | Администрирование → Журнал регистрации |
Открыть Конфигуратор
можно, пока в базе работают люди. Монопольный доступ нужен для отдельных операций: обновления структуры базы, загрузки .dt, тестирования и исправления. Конфигуратор сам скажет, если монопольный режим установить не удалось.
Запуск из командной строки
Командная строка нужна для ярлыков, скриптов и ночных заданий.
rem Открыть файловую базу в пользовательском режиме
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Админ" /P"пароль"
rem Выгрузить серверную базу в .dt
"C:\Program Files\1cv8\8.3.24.1691\bin\1cv8.exe" DESIGNER /S"srv1c\buh" /N"Админ" /P"пароль" /DumpIB"E:\Backup\buh.dt" /Out"E:\Backup\log.txt"
Номер версии в пути замените на свой — он виден в Справка → О программе. Ключ /ClearCache при запуске очищает клиентский кэш, /UpdateDBCfg в пакетном Конфигураторе применяет изменения конфигурации к базе.
Пользователи базы и права доступа
Пользователей в типовых конфигурациях заводят в режиме 1С:Предприятие, а не в Конфигураторе. Путь в Бухгалтерии 3.0, ЗУП 3.1 и УТ 11 одинаковый: Администрирование → Настройки пользователей и прав → Пользователи.
При записи карточки программа сама создаёт пользователя информационной базы и выдаёт роли по группам доступа. Если завести человека только в Конфигураторе (Администрирование → Пользователи), он войдёт в базу, но в справочнике «Пользователи» не появится, а права будут расходиться с профилем.
Порядок настройки
- Создайте пользователя, задайте имя для входа и пароль, отметьте
Вход в программу разрешен. - Откройте
Права доступав карточке и включите его в группы доступа: «Бухгалтер», «Кадровик», «Менеджер по продажам» и т.п. - Если нужна изоляция по организациям или складам — в разделе
Настройки пользователей и праввключите ограничение доступа на уровне записей и задайте значения в группах доступа. - Скопируйте настройки рабочего места с опытного сотрудника, чтобы новичок не настраивал списки и отчёты с нуля.
Не удаляйте последнего пользователя с полными правами. Без него никто не сможет зайти в администрирование, а восстановление прав займёт время и потребует Конфигуратора.
💡 Для входа под учётной записью Windows отметьте в карточке аутентификацию операционной системы и выберите пользователя домена. Пароль 1С тогда не спрашивается.
Регламентное обслуживание базы данных 1С
Обслуживание — это четыре привычки: регулярная копия, проверка целостности, контроль размера и чистка помеченного.
Резервные копии
- 📦 Выгрузка
.dt— универсальна, подходит для переноса между файловым и серверным вариантом. Требует, чтобы базу не меняли во время выгрузки, лучше делать ночью. - 📁 Копия файла
1Cv8.1CD— для файловой базы, только при закрытой базе. Быстро, но копия, снятая «на ходу», может оказаться битой. - 🗄️ Резервная копия СУБД — для серверной базы: полная раз в сутки плюс копии журнала транзакций в рабочее время. Это основной способ для сервера.
В файловых базах на типовых конфигурациях можно включить автоматическое копирование: Администрирование → Обслуживание → Резервное копирование и восстановление.
💡 Копия не считается копией, пока её не развернули. Раз в месяц загружайте свежий .dt в отдельную тестовую базу и открывайте пару отчётов.
Тестирование и исправление
Администрирование → Тестирование и исправление в Конфигураторе проверяет логическую и ссылочную целостность, пересчитывает итоги, реструктурирует таблицы. Нужен монопольный режим, и перед запуском — свежая копия.
Если файловая база не открывается вовсе, пригодится утилита chdbfl.exe из папки bin платформы. Она проверяет сам файл 1Cv8.1CD без запуска 1С. База при этом должна быть закрыта у всех.
Чистка и размер
- 🗑️
Администрирование → Обслуживание → Удаление помеченных объектов— убирает то, что пометили на удаление и на что нет ссылок. Запускайте вне рабочего времени: операция долгая и мешает проведению. - 📜 Журнал регистрации растёт годами. Старые записи можно выгрузить в файл и сократить журнал в Конфигураторе.
- 🔧 На сервере СУБД раз в неделю: обновление статистики и перестроение индексов. Без этого серверная база постепенно замедляется даже при хорошем железе.
Блокировки и ошибки базы данных: как найти причину
Большинство жалоб «база тормозит» и «не проводится» сводятся к трём ситуациям: кто-то держит данные, база повреждена или испорчен кэш.
Кто держит базу
В Конфигураторе откройте Администрирование → Активные пользователи. Для серверной базы полнее картина в консоли кластера: у базы есть узлы Сеансы и Соединения, там видно компьютер, приложение и время начала.
Из командной строки сеансы смотрят утилитой rac (нужен запущенный сервис ras):
rac cluster list
rac session list --cluster=<ид_кластера> --infobase=<ид_базы>
Остальные параметры — в справке rac help session.
Принудительное завершение сеанса обрывает работу человека: несохранённый документ пропадёт. Сначала предупредите пользователей, а для регламентных работ включите блокировку начала сеансов: в программе — Администрирование → Обслуживание → Блокировка работы пользователей, на сервере — в свойствах базы в консоли кластера.
Типичные сообщения
Если зависло на сервере
Зависший рабочий процесс видно в консоли кластера: у него растёт память, а сеансы не отвечают. Перезапуск службы «Агент сервера 1С:Предприятия» лечит многие такие случаи, но разрывает все сеансы всех баз кластера. Делайте это вечером или после предупреждения пользователей.
Очистка серверного кэша (папки snccntx* в каталоге srvinfo\reg_1541) допустима только при остановленной службе. Сам каталог srvinfo и файлы реестра кластера не удаляйте: с ними пропадёт регистрация баз в кластере.