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