Основная идея

Комплект скриптов для изготовления уменьшеного функционального эквивалента IBSO. В процессе работы обходится набором прав владельца схемы и по возможности не создает чрезмерной нагрузки. Основные рабочие инструменты это утилиты exp, imp и sqlplus.

Алгоритм выполнения

Процесс состоит из интуитивно понятных этапов. Сначала создается Oracle экземпляр - заготовка. В заготовке создаем табличные пространства, пользователей AUD, AUDM, IBS, необходимые группы и раздаем права.

Затем извлекаем информацию из “ОРИГИНАЛА”. Сначала делаем экспорт схемы IBS. Затем необходимо извлечь подмножество данных. Делается это следующим образом: предположим, нам нужна схема содержащая документы, проведенные за последний месяц. Это ограничение записывается так: ”select id from z#document where c_date_exec > sysdate-30”. Используя это определение, генерируются представления, ограничивающие подмножество данных для всех зависимых таблиц. После этого можно выполнять экспорт. Таблицы, не попавшие под ограничение, экспортируются в полном объеме. Разумеется, можно (и нужно) задавать дополнительные ограничения. Итого получаем <количество таблиц> + 1 файлов с дампами.

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

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