Решение для серверной базы при возникновении ошибки "Нарушена целостность структуры конфигурации"

17.12.16

Задачи пользователя - Корректировка данных

После динамического обновления перестал открываться конфигуратор. При попытке открытия возникала ошибка "Нарушена целостность структуры конфигурации", после чего предлагался перезапуск или завершение программы. Решено с использованием материалов из сети. Описание личного опыта решения проблемы для клиент-серверного варианта на базе MS SQL 2012 и 1С Предприятие 8.3 (8.3.8.1675) при наличии прав администратора на сервере и резервных копий конфигурации

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

Исходные данные: 1C Предприятие 8.3, клиент-серверная база, MS SQL 2012, резервное копирование настроено средствами MS SQL, бэкапы создаются 1 раз в сутки, ночью.

Конфигурация модифицированная и над ней ведется активная работа, поэтому у меня была вторая серверная база, в которой и велась разработка, плюс имелись в наличии выгрузки в dt из обеих баз на предыдущий день. В качестве имени рабочей базы в статье будет применено "MyBase", в качестве имени резервной серверной базы "MyTestBase"/

В моем случае таблица базы ConfigSave была пустой, как и в описанных материалах, а в таблицах Config и Params присутствовали строки  со значением "DynamicallyUpdated" в поле FileName

Материалы из сети, которыми я пользовалась при решении вопроса:

https://forum.sys-adm.in/index.php?topic=558.0

http://1c-kod.ru/index.php?t_id=108

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

Для решения проблемы были выполнены следующие действия:

1. Отключены все сеансы пользователей 1с

2. Через консоль управления 1с серверами установлена блокировка начала сеансов и отмена запуска регламентных заданий.

3. Сделан бэкап рабочей базы средвами MS SQL с использованием SQL Server Management Studio.  Запросами из таблиц 

удалены записи со значениями "DynamicallyUpdated" в поле FileName из таблиц Config и Params:

Delete From [MyBase].[dbo].[Config] 
WHERE [FileName] LIKE 'DynamicallyUpdated' 
и 
Delete From [MyBase].[dbo].[Params] 
WHERE [FileName] LIKE 'DynamicallyUpdated' 

4. В резвервную базу средствами конфигуратора загружена последняя выгрузка .dt из рабочей базы (вечер предыдущего дня) и поверх загружена последняя рабочая конфигурация текущего дня из имеющегося файла .cf  (вся история изменений конфигурации хранится в отдельных файлах с номерами версий)

5. В диспетчере задач пришлось отключить повисшие процессы 1с8

6. Остановлена служба сервера 1с

7. Очищен кэш 1С  

В моем случае это было переименование папок C:\Users\Администратор\AppData\Local\1C\1сv8

C:\Users\Администратор\AppData\Roaming\1C\1CEStart

C:\Users\Администратор\AppData\Roaming\1C\1Cv82

C:\Users\Администратор\AppData\Roaming\1C\1Cv8

8. Запущена служба сервера

9. После чистки кэша окно со списком баз при запуске 1С пустое, поэтому добавляем существующую рабочую серверную базу

10. Открылся конфигуратор. Делаем на всякий случай выгрузку в .dt рабочей базы в текущем "сломанном" состоянии  и закрываю конфигуратор

11. Запускаем SQL Server Management Studio и запросом очищаем в рабочей базе таблицу Config и перезаписываем ее содержимым аналогичной талицы из резервной базы:

Delete From [MyBase].[dbo].[Config]

INSERT INTO [MyBase].[dbo].[Config] SELECT * FROM [MyTestBase].[dbo].[Config] 

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

Delete From [MyBase].[dbo].[Params]

INSERT INTO [MyBase].[dbo].[Params] SELECT * FROM [MyTestBase].[dbo].[Params] 

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

12. Отключаем блокировку начала сеансов и входим в режиме предприятия

Работоспособность полностью восстановлена, данные не потеряны. 

13. Выключаем блокировку запуска регламентных заданий.

Вступайте в нашу телеграмм-группу Инфостарт

Нарушена целостность структуры конфигурации не открывается конфигуратор ошибка при сохранении конфигурации

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14640 руб.

29.04.2020    49680    134    161    

90

Корректировка данных Системный администратор Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

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

3660 руб.

10.02.2017    120528    724    177    

763

Файловый обмен (TXT, XML, DBF), FTP Поиск данных Инструменты администратора БД Корректировка данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная обработка позволит Вам легко и просто, а главное - быстро, выполнить сравнение данных между ЛЮБЫМИ базами (и РИБ, по правилам конвертаций) по контрольным суммам выбранных объектов баз 1С, работающих на платформах 8.3 и выше. Удобный и понятный интерфейс в виде "мастера". Высокая скорость сравнения достигается за счет специального алгоритма расчета контрольной суммы объекта/записи и сравнения по данным суммам объектов 2х баз через файл. Имеется возможность выбора реквизитов, по которым система будет сравнивать объекты. Сравнение количества записей в движениях документов, возможность сравнивать данные по правилам конвертации и не только! Выбор объектов конфигурации для КАЖДОГО узла в отдельности с индивидуальным отбором для каждого объекта конфигурации, работа с FTP, сохранение или загрузка настроек, сохранение или загрузка результата сравнения, регистрация на обмен объекта и его движений. (Обновление от 12.11.2024, версия 2.2-2.5)

24400 руб.

27.10.2017    45549    31    13    

49

Взаиморасчеты Корректировка данных Бухгалтер 1С 8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Автоматическое создание документов корректировок долга. Распределение Аванса уплаченному Интернет-площадке и долгами поставщиков.

7320 руб.

02.03.2026    634    2    0    

4
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Fox-trot 166 17.12.16 18:24 Сейчас в теме
Работоспособность полностью восстановлена, данные не потеряны.

восстановление из дтшнего файла сама 1с не рекомендует. так что твоя рекомендация сумнительна.
и потом, имея скульный сервер и не воспользоваться возможностью восстановления записей, таблиц... да чего угодно - это не профессионально имхо
2. TODD22 20 17.12.16 18:32 Сейчас в теме
(1)
восстановление из дтшнего файла сама 1с не рекомендует. так что твоя рекомендация сумнительна.

1С не рекомендует делать резервные копии выгрузкой в dt.
rozer; ipoloskov; Dot78; +3 Ответить
3. Fox-trot 166 17.12.16 19:03 Сейчас в теме
(2) то есть восстанавливать можно, а делать нельзя? я вас правильно понял, коллега?
4. TODD22 20 17.12.16 19:08 Сейчас в теме
(3)
то есть восстанавливать можно, а делать нельзя? я вас правильно понял, коллега?

Нет вы меня не правильно поняли. Так же как и рекомендации 1С....
10. igel9780 175 23.12.16 15:31 Сейчас в теме
(3) 1С не рекомендует использовать dt как единственное средство резервного копирования. По целому ряду причин. Поэтому я резервирую и в dt, и средствами SQL. Первое нужно больше для себя, чтоб локально разворачивать вчерашнюю копию.
11. Fox-trot 166 23.12.16 17:43 Сейчас в теме
(10) из дт восстановиться на порядок медленнее, а выгрузка так вообще требует момнопольности доступа к бд. хотя это совсем другая история..
5. speshuric 1343 19.12.16 09:32 Сейчас в теме
(0) Демоническое обновление всё еще зло.
FesenkoA; sleakers; AlX0id; CSiER; artbear; 1cmax; +6 Ответить
7. Zhilyakovdr 148 21.12.16 10:02 Сейчас в теме
(5) На одном из последних релизов обычное обновление конфы упало на реструктуризации.
Также на одном из последних релизов после подключения тестовой БД к хранилищу, на этапе обновления конфы падал конфигуратор.
Так что зла хватает и без динамического обновления(((
8. AlX0id 23.12.16 10:43 Сейчас в теме
(5)
Абсолютно поддерживаю. На всех проектах относительно большой длительности всегда проявляются проблемы из-за дин.обновления. И обратно - при отказе от дин.обновлений количество "волшебных" ошибок уменьшается в разы.
6. mmch 131 21.12.16 09:35 Сейчас в теме
9. Kosstikk 87 23.12.16 13:57 Сейчас в теме
не хватало:

DELETE
FROM Config
WHERE
FileName like '%dynupdate%'
;

DELETE
FROM Params
WHERE
FileName like '%dynupdate%'
;
12. Denic01 30.08.17 18:47 Сейчас в теме
"упал" также при обновлении
базу спасло

Delete From [MyBase].[dbo].[ConfigSave]

INSERT INTO [MyBase].[dbo].[ConfigSave] SELECT * FROM [MyTestBase].[dbo].[Config]

т.е. фактический надо очистить этот ConfigSave

на тестовой сначала сделал описанные действия не помогло, на рабочей ничего не делал кроме ConfigSave
savauu; minudo; +2 Ответить
15. minudo 04.10.21 12:21 Сейчас в теме
(12) Большое спасибо за рабочее решение!
13. jeno 06.07.20 19:12 Сейчас в теме
Спасибо тебе милый человек день сижу долбаюсь! У меня серверный вариант и подмена кеша ну ни как !!! но запрос с подменой таблиц это ОООчень помогло! INSERT INTO [ПОЛОМАННАЯ БАЗА].[dbo].[ConfigSave] SELECT * FROM [ПОДНЯТАЯ ИЗ АРХИВА].[dbo].[Config]
savauu; Dimka_k; Rastopchinss; minudo; +4 Ответить
14. пользователь 06.07.20 19:14
Сообщение было скрыто модератором.
...
16. kivi-84 12.06.24 20:15 Сейчас в теме
Спасибо за статью. Прямо выручили!
17. Ankare 111 18.07.25 12:59 Сейчас в теме
тема хоть и старая, а ошибки периодически возникают в разных сценариях.
у нас например возникла проблема на большой тестовой базе, на 8.3.27 платформе, и решилась установкой 8.3.25 актуального релиза. бэкап и структура конфигурации при этом не были не битыми, это было заранее известно.
может кому-то пригодится информация. не забывайте что актуальные платформы бывают со своими малоизвестными багами, прежде чем лезть и пытаться чинить конфигурацию
20. kosmosfr 15.01.26 13:25 Сейчас в теме
(17) Решил сразу попробовать откатить до 8.3.25 и это помогло
21. Ankare 111 02.02.26 15:06 Сейчас в теме
(20) в нашем случае в процессе общения с Тех поддержкой Вендора выяснили что запуск базы на актуальных платформах будет возможен после добавления в основной конфигурации рандомной константы с последующим монопольным обновлением. Обещали выявленную проблему исправить в будущих релизах платформы. Вдруг будет полезно
18. config 209 21.10.25 13:10 Сейчас в теме
Всем привет. Словили утром такую ошибку на серверной тестовой базе, после незапланированного ребута сервера ночью. Режим 1С:Предприятие запускался, конфигуратор нет. Помогла очистка кеша в папках C:\Users\...\AppData\Local\1C\1cv8 и C:\Users\...\AppData\Roaming\1C\1cv8
19. faridmadani 05.01.26 23:01 Сейчас в теме
У меня не открывалась конфигурация в конфигураторе, падала с ошибкой "Нарушена целостность структуры конфигурации". Ошибка возникла при обновлении конфигурации.


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

sel ect * from АрхивнаяБаза.dbo.Config
EXCEPT
sel ect * fr om НерабочаяБаза.dbo.Config

Запрос в результате показал две различные строчки.

4. Скопировал эти две строчки запросом

INS ERT INTO НерабочаяБаза.dbo.Config
SEL ECT * FR OM АрхивнаяБаза.dbo.Config
EXCEPT
SELE CT * FR OM НерабочаяБаза.dbo.Config

Оставлю здесь для истории. Делайте копии:)
Для отправки сообщения требуется регистрация/авторизация