Администрирование · 10 мин
Ошибка базы данных 1С 8.3: как найти причину и исправить
Что делать при ошибке базы данных 1С 8.3: диагностика, тестирование и исправление ИБ, очистка кэша, chdbfl.exe, восстановление из копии. Пошаговая инструкция.
Сообщение «Ошибка базы данных» в 1С 8.3 — это общий признак того, что платформа не может корректно прочитать или записать данные информационной базы. Причины бывают разными: повреждение файла 1Cv8.1CD, сбой кэша метаданных, проблемы с СУБД в клиент-серверном варианте, нехватка места на диске или обрыв соединения с сервером.
Единой кнопки «исправить всё» не существует: сначала нужно локализовать проблему — понять, возникает ли ошибка у всех пользователей или у одного, во всех базах или в конкретной, при запуске или при выполнении определённой операции. От этого зависит выбор инструмента: очистка кэша, встроенное тестирование и исправление, утилита chdbfl.exe или восстановление из резервной копии.
Прежде чем начинать любые действия, сделайте резервную копию информационной базы. Большинство процедур восстановления необратимы: если что-то пойдёт не так, копия будет единственным способом вернуть данные. Для файловой базы достаточно скопировать файл 1Cv8.1CD, для серверной — выполнить выгрузку в dt или средствами СУБД.
Как определить источник ошибки
Диагностика начинается с простых вопросов. Ошибка появляется у всех пользователей или только у одного? Возникает при запуске базы, при записи документа, при проведении или при формировании отчёта? Появилась ли она после обновления конфигурации, отключения электричества, переполнения диска или аварийного завершения работы сервера?
Если ошибка возникает только у одного пользователя на одном компьютере, а вся остальная работа идёт нормально — почти наверняка проблема в локальном кэше метаданных, и начинать нужно с его очистки. Если ошибка наблюдается у всех и в любой операции — вероятно повреждение самой базы или проблема на стороне сервера.
Очистите кэш 1С на этом компьютере
Проверьте утилитой chdbfl.exe
Смотрите технологический журнал и логи СУБД
Проверьте диск и выполните тестирование и исправление
Очистка кэша 1С — первое действие
Кэш метаданных хранится в профиле пользователя и ускоряет запуск клиента. При аварийном завершении сеанса, обновлении платформы или конфликте версий кэш может рассинхронизироваться с реальной базой, что вызывает ошибки вида «Ошибка формата потока», «Поле объекта не обнаружено» и похожие сообщения, вводящие в заблуждение.
Для очистки завершите все сеансы 1С на проблемном компьютере и удалите содержимое папок кэша:
%APPDATA%\1C\1cv8\
%LOCALAPPDATA%\1C\1cv8\Удалять нужно только папки с именами в виде длинных буквенно-цифровых идентификаторов (GUID) — это и есть кэш конкретных баз. Файлы с настройками (ibases.v8i, def.lck и подобные) трогать не нужно. Альтернативный способ — удалить базу из списка в окне запуска и добавить её заново: при этом создаётся новый каталог кэша.
После очистки запустите базу и повторите операцию, которая вызывала ошибку. Если проблема ушла — диагностика завершена. Если ошибка повторяется у всех пользователей, переходите к проверке самой базы.
Проверка файловой базы утилитой chdbfl.exe
Для файловых информационных баз в составе платформы поставляется утилита chdbfl.exe, которая проверяет физическую целостность файла 1Cv8.1CD. Она находится в каталоге установки платформы, обычно по пути вида:
C:\Program Files\1cv8\<версия платформы>\bin\chdbfl.exeПорядок работы с утилитой:
- 1Завершите работу всех пользователей с базой и снимите блокировки
- 2Скопируйте файл 1Cv8.1CD в отдельную папку как резервную копию
- 3Запустите chdbfl.exe и укажите путь к файлу 1Cv8.1CD
- 4Установите флажок «Исправлять обнаруженные ошибки»
- 5Нажмите «Выполнить» и дождитесь окончания проверки
- 6Запустите базу в конфигураторе и выполните тестирование и исправление
Утилита может удалить повреждённые фрагменты данных, которые не поддаются восстановлению. Это означает, что часть записей (например, отдельные документы) может быть потеряна. Именно поэтому проверку всегда выполняют на копии или после создания резерва.
Тестирование и исправление в конфигураторе
Встроенный механизм «Тестирование и исправление» запускается из конфигуратора: меню «Администрирование» → «Тестирование и исправление». Работать с ним нужно в монопольном режиме — все пользователи должны выйти из базы.
Доступные проверки включают реиндексацию таблиц, проверку логической и ссылочной целостности, пересчёт итогов. Для первого прохода обычно достаточно реиндексации и проверки логической целостности. Проверка ссылочной целостности занимает заметно больше времени на больших базах.
В нижней части окна выберите режим «Тестирование и исправление» и вариант обработки ошибок ссылочной целостности. Вариант «Создавать объекты» безопаснее, чем «Удалять объекты»: при нём система создаёт объекты-заглушки вместо битых ссылок, и данные не теряются безвозвратно.
Ошибки в клиент-серверном варианте работы
Если база работает на связке «сервер 1С + СУБД» (MS SQL, PostgreSQL и др.), источники ошибок другие: переполнение журнала транзакций, нехватка места на диске с данными СУБД, разрывы соединения между сервером 1С и СУБД, блокировки и деградация производительности.
Первичная диагностика — журнал регистрации 1С (в конфигураторе: «Администрирование» → «Журнал регистрации») и логи самой СУБД. Типичные сценарии: ошибка «could not extend file» или аналогичная указывает на нехватку места; сообщения о таймаутах и разрывах соединения — на проблемы сети или перегрузку сервера.
Проверьте свободное место на всех дисках сервера СУБД, состояние служб сервера 1С и СУБД, а также наличие регламентных заданий обслуживания базы (обновление статистики, перестроение индексов, сжатие журнала транзакций). Отсутствие регулярного обслуживания СУБД — частая причина постепенной деградации и последующих ошибок.
Как выбрать действие
Восстановление из резервной копии и профилактика
Если повреждения не устраняются штатными средствами или их цена слишком высока (утрачены важные данные), самый надёжный путь — восстановление из резервной копии. Для файловой базы это замена 1Cv8.1CD на файл из копии, для серверной — восстановление средствами СУБД или загрузка ранее выгруженного dt-файла.
После восстановления оцените разрыв: какие документы и операции были введены между моментом копирования и сбоем. Эти данные придётся ввести повторно, поэтому чем чаще выполняется резервное копирование, тем меньше потери.
Профилактика сводится к нескольким правилам: регулярные автоматические копии базы (ежедневно для активно используемых систем), источник бесперебойного питания для сервера и компьютеров с файловыми базами, контроль свободного места на дисках, своевременное обновление платформы и регламентное обслуживание СУБД.
Как проверить результат
База открывается без сообщений об ошибках
Ошибка воспроизводится у всех пользователей
Документы записываются и проводятся штатно
Ошибки при записи конкретных объектов — возможны битые ссылки
Нет повторяющихся ошибок СУБД и фоновых заданий
Ошибки продолжают накапливаться — ищите причину глубже
Запас места достаточен для роста базы и временных файлов
Диск почти заполнен — высок риск повторного сбоя
Частые вопросы
Что означает «Ошибка формата потока» в 1С 8.3?
Чаще всего это следствие повреждённого кэша метаданных на компьютере пользователя, а не самой базы. Начните с очистки кэша или удаления базы из списка и повторного добавления. Если ошибка возникает у всех пользователей одновременно — проверяйте целостность базы.
Можно ли запускать тестирование и исправление при работающих пользователях?
Нет. Процедура требует монопольного доступа к базе. Работа пользователей во время исправления может привести к новым повреждениям и потере данных. Завершите все сеансы через консоль кластера или список активных пользователей.
Удалит ли chdbfl.exe мои документы?
Утилита удаляет только физически повреждённые фрагменты, которые невозможно восстановить. Если повреждение затронуло область с документами, эти записи будут потеряны. Поэтому проверку всегда выполняют после создания копии файла 1Cv8.1CD.
База открывается, но при проведении документа возникает ошибка СУБД. Что делать?
Посмотрите журнал регистрации и логи СУБД: типичные причины — нехватка места, переполненный журнал транзакций или длительные блокировки. Если ошибка связана с конкретным объектом, проверьте ссылочную целостность через тестирование и исправление.
Как часто нужно делать резервные копии базы 1С?
Для активно используемых баз — ежедневно, в идеале с хранением нескольких последних копий на отдельном носителе или сервере. Копия, созданная на том же диске, что и база, не защищает от аппаратного сбоя диска.
Ошибка появилась после обновления платформы. В чём причина?
Вероятны две причины: устаревший кэш (очистите его у всех пользователей) или несовместимость версии платформы с конфигурацией. Проверьте требования конфигурации к версии платформы и при необходимости откатитесь на предыдущий релиз до выяснения причин.
Что важно запомнить
Любое исправление ошибки базы данных 1С 8.3 начинается с резервной копии. Локальные ошибки одного пользователя лечатся очисткой кэша, повреждения файловой базы — chdbfl.exe и тестированием с исправлением, серверные проблемы — анализом логов и обслуживанием СУБД. Регулярные копии и контроль дискового пространства предотвращают большинство потерь данных.