Долго идет проверка логической целостности 1с. Тестирование и исправление информационной базы. Примеры использования параметров

Долго идет проверка логической целостности 1с. Тестирование и исправление информационной базы. Примеры использования параметров

Как сделать тестирование и исправление базы 1С:Бухгалтерия (8.3 редакция 3.0)

2017-12-19T18:21:22+00:00

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

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

2. Теперь, когда резервная копия сделана, запустите базу в режиме конфигуратора:

3. Выберите пункт "Администрирование"-"Тестирование и исправление..." :

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

5. Будем тестировать и исправлять сразу (второй вариант):

6. Если база очень большого размера, то можно ограничить выполнение проверок во времени. Не будем этого делать:

7. Реиндексация таблиц информационной базы. Что это такое? Для каждой таблицы (например, справочника) в базе строится индекс для ускорения поиска по определенным полям. Так вот, это исправление заново строит все индексы:

8. Проверка логической целостности информационной базы проверяет и исправляет логические ошибки в структурах таблиц:

9. Проверка ссылочной целостности информационной базы проверяет все ссылки на объекты, которые могут уже не существовать или быть разрушенными:

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

10. Пересчет итогов. Итоги - грубо говоря, это индексы для регистров, в которых хранится информация, создаваемая документами. Например, наличие итогов по регистру остатков товара позволяет нам быстро получать значение остатков товара на некоторую дату. Эта проверка заново пересчитывает все итоги за все время. Замечу, что обычно это очень долгая по времени проверка.

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

12. Реструктуризация таблиц информационной базы. Последнее грозное оружие в борьбе с ошибками. Для каждой таблицы - создается новая таблицы с нужной структурой и все данные из старой таблицы переносятся в новую:

13. Выбрав нужный пункт, запускайте проверку (кнопка "Выполнить"):

14. После всех проверок откроется окно Служебные сообщения с информацией о результатах тестирования:

Если исправление не помогло и стало только хуже - из резервной копии, которую мы сделали на первом этапе.

Тестируем через обновлятор

Для пользователей моего всё ещё проще.

Отметьте нужную базу в списке, а затем из пункта "Ещё" выберите пункт "6.06 Тестирование и исправление баз":

Откроется окно с опциями полностью совпадающими с опциями конфигуратора:

Отметьте нужные и нажмите кнопку "ОК".

При этом обновлятор:

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

При этом, если вам потребуется восстановить (откатить) базу на созданную резервную копию перед тестированием - отметьте базу галкой, а затем из пункта "Ещё" выберите вариант "6.01 Восстановить файл данных базы из zip, 7z, rar".

Иногда при работе с 1С могут возникать сбои или ошибки.

В данной статье мы поговорим о тестировании и исправлении информационной базы 1С.

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

Если у Вас возникла необходимость провести процедуру тестирования и исправления информационной базы 1С:

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

Во вторых: После создания резервной копии следует открыть Конфигуратор, далее в меню: Администрирование -> Тестирование и исправление…

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

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

Реиндексация таблиц - это перестроение индексов таблиц, направленное на повышение быстродействия работы базы.

Проверка логической целостности – это целое множество проверок логики базы данных

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

Пересчет итогов – расчет итогов таблиц регистров накопления

Сжатие таблиц информационной базы – данный пункт отвечает за уменьшение размера базы после тестирования. Объяснить уменьшение размера базы можно, например, так: когда из базы удаляется объект, он, по сути, остается в базе внутри, но невидимым для конечного пользователя. Сделано это для того, чтобы объект все-таки можно было восстановить уже после полного удаления из базы (хотя мы с таким не встречались). И сжатие таблиц, как раз убирает информацию об удаленных уже объектах из базы данных. От этого таблицы становятся меньше (это всего лишь один пример, как работает сжатие).

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

Реструктуризация таблиц – пример можно привести такой: берется таблица № 1, создается копия ее структуры, назовем, как Таблица № 2 и данные из таблицы № 1 копируются порциями в таблицу № 2.

Имеется возможность выполнять только тестирование или тестирование с исправлением.

Пункты настроек по обработке ошибок базы становятся доступными для выбора при варианте обработки «Тестирование и исправление», а также режиме «Проверка ссылочной целостности информационной базы».

Первая настройка: «При наличии ссылок на несуществующие объекты» означает, что в базе будет произведен поиск «битых ссылок» (когда какой-то реквизит ссылается, к примеру, на элемент справочника, а физически данный элемент уже в базе отсутствует. В результате, встречаются записи типа «Объект не найден <……>») и вариант обработки таких ссылок:

Попытка создать несуществующий объект;

Ничего не изменять.

Вторая настройка: «При частичной потере данных объекта» означает, что данные какого-либо объекта были потеряны, но оставшихся данных вполне хватает для восстановления утраченного. Варианты обработки таких объектов не отличаются по смыслу от вариантов предыдущей настройки.

Процесс тестирования и исправления информационной базы может быть разбит на несколько этапов. При этом доступны следующие возможности:

  • ограничение времени тестирования и исправления;
  • сохранение параметров тестирования между этапами;
  • продолжение прерванного ранее тестирования и исправления;
  • поддержка тестирования и исправления порциями в командной строке запуска.

Следует заметить, что тестирование и исправление информационной базы 1С может выполняться только в монопольном режиме (т.е. работа пользователей с информационной базой в процессе тестирования и исправления невозможна).

Утилита chdbfl

Вариант с тестированием базы средствами самой программы 1С – не единственный. В комплект поставки платформы 1С: Предприятие входит еще вспомогательная утилита для тестирования и исправления файлового варианта базы данных.

Опять-таки перед всеми операциями с базой обязательно создавайте копию.

После удачного резервного копирования надо открыть утилиту chdbfl. Она находится в каталоге установленной программы 1С.

Путь к ней, как правило, такой: C:\Program Files\1cv82\ «релиз платформы 1с» \bin

Там находится файл: «chdbfl.exe»

Убедившись, что в базе 1С, которую будете тестировать, не находится ни один пользователь (в том числе вы), запускаете программу.

В окне «Имя файла БД» выбираете путь к файлу с базой данных. Сам файл всегда имеет расширение *.1CD, а путь к папке с базой данных можно посмотреть в списке информационных баз, который открывается при запуске 1С: Предприятие.

Можно просто тестировать базу, можно сразу поставить галочку «Исправлять обнаруженные ошибки». Тогда программа сама поправит ошибки в базе. Настроек тут, правда, никаких нет и программа будет уже сама исправлять ошибки базы автоматически.

После выбора базы и установки режима нужно просто нажать на «Выполнить». Программа начнет работать и через некоторое время сообщит о завершении процесса тестирования.

1С8 Параметры консольного вызова тестирования и исправления

DESIGNER (CONFIG в 8.0) Запуск в режиме Конфигуратора.

/@ Путь к файлу с параметрами командной строки.

/F Путь к файловой информационной базе (исключая имя файла).
/S Адрес информационной базы на сервере 1С:Предприятия.
/IBName запуск информационной базы по имени базы в списке информационнх баз. При необходимости имя должно быть взято в двойные кавычки. При этом, если имя содержит двойные кавычки, то нужно заменить каждые двойные кавычки на две двойные кавычки. Если в списках баз будет найдено более чем одна база с указанным именем, то пользователю будет выдана ошибка.

/N Имя пользователя, как оно задано в Конфигураторе.
/P пароль пользователя, имя которого указано в параметре /N. Если у пользователя нет пароля, этот параметр можно опустить.

/Out[ -NoTruncate] Задаёт файл для вывода служебных сообщений. Если задано -NoTruncate, файл не очищается (не используется в тонком клиенте). C 8.2.15 файл сообщений открывается в режиме, допускающем совместное чтение, и во время пакетного режима запуска Конфигураторa запись в этот файл выполняется сразу, а не буферизуется.

/UC [код доступа] — позволяет выполнить установку соединения с информационной базой, на которую установлена блокировка установки соединений. Если при установке блокировки задан непустой код доступа, то для установки соединения необходимо в параметре /UC указать этот код доступа.

/DumpIB[ИмяФайла] Выгрузка информационной базы.

/IBCheckAndRepair выполнить тестирование и исправление информационной базы.
. -ReIndex реиндексация таблиц;
-LogIntegrity проверка логической целостности или
-LogAndRefsIntegrity проверка логической и ссылочной целостности;
-RecalcTotals пересчет итогов;
-IBCompression сжатие таблиц;
-Rebuild реструктуризация таблиц информационной базы;

-BadRefCreate создавать объекты или
-BadRefClear очищать объекты или
-BadRefNone не изменять при частичной потере объектов:

-BadDataCreate создавать объекты или
-BadDataDelete удалять объекты или

-BadDataNone не изменять объекты;

UseStartPoint использовать сохраненную точку возврата для продолжения тестирования с того места, на котором оно было прервано в предыдущем сеансе;
TimeLimit:hhh:mm ограничение максимального времени сеанса тестирования: hhh - количество часов (0..999); mm - количество минут (0..59).

Примеры использования параметров

C:\Program Files\1cv8\bin\1cv8.exe CONFIG /F"C:\DemoTrd2" /N"Федоров (администратор)" /P"" /IBcheckAndRepair -LogIntegrity

C:\Program Files\1cv82\common\1cestart.exe DESIGNER /S"Server-1C\1C-Work82" /N"Администратор" /P"12345" /IBcheckAndRepair -LogIntegrity

Спасибо!

Beta Меню

Внешнее и внутреннее тестирование базы 1С:Предприятие

Любому бывалому пользователю 1С:Предприятие внешнее и внутреннее тестирования базы данных — дело обыденное. Эта статья нацелена на начинающих пользователей, которые либо столкнулись с необъяснимой работой своей базы данных, либо пережили внезапное отключение питания ПК или ноутбука, после которого база данных перестала открываться, либо во время работы происходят «вылеты» и 1С просто закрывается без каких-либо сообщений об ошибках, либо многое другое (причин тестирования действительно масса, все перечислять не будем).

Процесс тестирования достаточно простой в обоих случаях, но в зависимости от размера базы и дисковой подсистемы ПК (HDD или SSD) может занимать достаточно длительный промежуток времени.


Внешнее тестирование базы данных 1С:Предприятие: проверка физической целостности файла БД

Внешнее тестирование — первое, что нужно сделать, если Ваша база данных не открывается.

Перед любым тестированием обязательно сделайте копию файла 1Cv8.1CD!

Для проведения данной процедуры в указанной папке (версия платформы может быть любая)

C:\Program Files (x86)\1cv8\8.3.8.1784\bin

лежит утилита chdbfl.exe (синий бочонок с зелёной галочкой).

  1. Запускаем утилиту chdbfl.exe .
  2. В появившемся окне указываем пусть к файлу 1Cv8.1CD базы данных, которую требуется протестировать.
  3. Ставим галочку «Исправлять обнаруженные ошибки».
  4. Нажимаем «Выполнить».

После этого в папке с базой данных появится четыре новых файла с префиксом _$NEW$_. Не удаляйте эти файлы во время тестирования, они удаляться сами! Так же Вам покажется, что эта утилита «зависла» и ничего не происходит — это не так! Ни в коем случае не прерывайте работу этой утилиты! Эти действия безвозвратно испортят Вашу базу данных 1С!

После тестирования скорее всего Вы увидите сообщение «Ошибок не обнаружено», но это не значит, что с Вашей базой данных ничего не произошло. Первое: она точно стала меньше. Может даже в 2 раза — это нормально, даже хорошо. Второе, скорее всего проблемы больше нет и теперь 1С запустится. Проверяйте.

Если проблема серьезнее и не устранилась внешним тестированием, переходим к внутреннему тестированию.

Внутреннее тестирование базы данных: Тестирование и исправление информационной базы (ТиС)

Это следующий шаг по устранению неполадок в работе базы данных. Требуются эти действия гораздо реже внешнего тестирования, однако помогают не хуже.


Остались вопросы?

Что-то пошло не так? Специалисты нашей компании помогут Вам разобраться с возникшими проблемами! Обращайтесь! →

Также Ваши вопросы Вы можете задать в нашей группе ВК или на нашем YouTube канале!

Эти статьи будут Вам интересны

У нашего клиента возникла вполне стандартная ситуация: Windows 10 получила большой пакет обновления и после перезагрузки ПК при запуске 1С:Предприятие пользователь увидел окно с текстом "Не обнаружена лицензия для использования программы". Пока ничего не обычного. Но после ввода нового пин-кода 1С:Предприятие и сообщения об успешной активации при очередном входе в программу сообщение о том, что лицензия не найдена снова всплывает. Разбираемся, в чём же дело.

В этой статье мы рассмотрим данную системную утилиту «Тестирование и исправление информационной базы» в 1С 8.3 и особенности её использования.

Перед проведением любых операций необходимо !

Тестирование и исправление информационной базы 1С

Режим тестирования и исправления вызывается в конфигураторе системы 1С 8.3 выбором меню Администрирование — Тестирование и исправление.

Проверки и режимы

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

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

  • Реиндексация таблиц информационной базы — если установлен этот флаг, будет произведена реиндексация таблиц. Реиндексация — полное перестроение индексов для заданных таблиц. Реиндексация существенно повышает производительность системы в целом. Данная процедура никогда не будет лишней и увеличивает производительность системы.
  • Проверка логической целостности информационной базы — система умеет проверять логическую и структурную целостность базы данных, находить ошибки в организации данных (например, страниц в файле).
  • Проверка ссылочной целостности информационной базы — подпункт логической проверки, проверяет информацию в базе данных на наличие «битых» ссылок. «Битые» ссылки появляются в базе из-за некорректной обработки информации разработчиком, чаще всего при непосредственном удалении данных или неправильно настроенном обмене данных. При нахождении ошибок можно выбрать 3 варианта действий: Создавать объекты — система создает элементы-заглушки, которые можно потом заполнить необходимой информацией, Очищать ссылки — «битые» ссылки будут очищены, Не изменять — система только покажет Вам ошибки.
  • Пересчет итогов — в платформе 1С в и есть понятие итогов. Итоги — таблица подсчитанных результатов, данные из которой получить быстрее, чем анализировать весь регистр сведений. Как правило, пересчет итогов увеличивает производительность системы.
  • Сжатие таблиц информационной базы — если установлен этот флаг, будет сжата и уменьшится в объеме. Связанно это с тем, что при удалении данных из базы данных, 1С не удаляет физически эти объекты, а лишь «помечает» их на удаление. Т.е. пользователь не видит их, а они есть:). Вот именно сжатие базы данных и удаляет такие записи окончательно. Также такого эффекта можно достичь выгрузкой и загрузкой файла базы данных (*.dt).
  • Реструктуризация таблиц информационной базы — процесс, с помощью которого система осуществляет пересоздание таблиц баз данных, обычно эта процедура вызывается при внесения изменений в структуру метаданных конфигурации. Реструктуризация всей БД — процесс долгий, будьте внимательны.

Если по каким-то причинам тестирование и исправление не помогает или у вас нет доступа в конфигуратор, воспользуйтесь утилитой .

Создано 10.03.2016 13:43 Опубликовано 10.03.2016 13:43 Автор: Administrator Просмотров: 6202

Многие пользователи могут столкнуться с тем, что в программе 1С случился сбой, стали появляться ошибки, программа внезапно "виснет" или закрывается. В этом случае просто необходимо выполнить тестирование и исправление информационной базы, так как этот встроенный механизм почти всегда помогает решить подобного рода проблемы.

Но перед тем как запустить данную процедуру, так же как и перед проведением любых важных операций, нужно обязательно сделать копию базы. Подробно о том, каким образом создать копию базы, было рассмотрено в статье Создание копии базы - для чего это нужно и как это сделать .

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

Когда "Конфигуратор" запущен, в меню нажимаем "Администрирование" и из выпавшего списка выбираем соответствующий пункт.

В открывшемся окне мы имеем право сами настроить вариант проверки, предлагается отметить "галочками" нужные позиции.


Первый пункт отмечаем, так как эта настройка выполнит перестроение индексов таблиц, что увеличит производительность системы. Установка "галочки" во втором пункте позволит проверить целостность таблиц базы и устранить в них ошибки. Далее выбираем проверку ссылочной целостности информационной базы, чтобы проверить все ссылки на объекты, ведь некоторые из них могут уже не существовать или быть разрушенными. При таком выборе активным становится поле, расположенное ниже, в котором можно указать, что делать с такими объектами: создавать новые, очищать или ничего не делать. Выбор следующего пункта приведет к пересчету итогов в регистрах накопления. Благодаря "галочке" напротив сжатия таблиц информационной базы при выполнении тестирования и исправления будут наконец удалены те данные, которые мы в свое время помечали на удаление и даже потом удаляли, но они все также оставались в базе, просто не были видны нам. Тем самым объем нашей базы уменьшится. И последнее в этом списке - реструктуризация, она нужна для того, чтобы образовались новые таблицы с нужной структурой, бояться этого не стоит, потому что все старые данные перенесутся в новые. Таким образом, как видим, для устранения проблем по всем фронтам рекомендуется отмечать все пункты.

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

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

Когда настройка тестирования проведена, можно запустить процесс по кнопке "Выполнить".

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

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

Если мы забыли, где именно находится база, всегда можем посмотреть путь в окне запуска, выбрав нужную базу.


Теперь, зная точный путь к базе, находим каталог и копируем.

Далее требуется найти и запустить утилиту chdbfl.exe, она устанавливается вместе с платформой 1С и найти ее можно в папке "Bin" каталога установки, чаще всего адрес выглядит подобным образом C:\Program Files (x86)\1cv8\8.3.7.1845\bin, где 8.3.7.1845 - номер релиза платформы. Но если трудности с поиском все-таки возникли, уточнить адрес можно щелкнув правой кнопкой мыши по ярлыку "1С Предприятие".

Итак, мы находим в папке "bin" нужную нам утилиту и запускаем ее двойным щелчком левой кнопки мыши.

После запуска утилиты откроется окно проверки физической целостности файла базы данных, нам потребуется указать имя файла, путь к базе уже известен после копирования, открываем каталог с базой и выбираем файл "1Cv8". Отмечаем "галочкой" необходимость исправлять обнаруженные ошибки и нажимаем "Выполнить".


Когда операция завершится, в окне утилиты мы увидим результат. После этого закрываем окно и пробуем зайти в программу.




top