до відкриття в режимі resetlogs, або застосувати скриптовими створення керуючого файлу на основі скрипта, згенерованого командою alter database backup controlfile to trace на вихідній базі.
Загальна структура SQL-конструкції для створення керуючого файлу:
CREATE CONTROLFILE SET DATABASE TEST RESETLOGS NOARCHIVELOG50510012261 «Q: REDO01.LOG» SIZE 100M, 2 «Q: REDO02.LOG» SIZE 100M, 3 «Q: REDO03.LOG» SIZE 100M
«Q: SYSTEM01.DBF»,
«Q: UNDO1.DBF» SET CL8MSWIN1251;
Створення керуючого файлу здійснюється в режимі nomount. У разі використання згенерованого скрипта слід:
поміняти параметр reuse на set у першому рядку CREATE CONTROLFILE REUSE DATABASE
встановити параметр resetlogs noresetlogs залежно від того, чи присутні в резервної копії журнальні файли і чи потрібно зберегти послідовність їх нумерації
тут же можна змінити місце розташування файлів і видалити згадки про відсутніх файлах даних
В результаті виконання сценарію CREATE CONTROLFILE заново створяться керуючі файли бази даних і сама база перейде в стан mount.
Далі, база даних відкривається фразою
SQL> alter database open;
або> alter database open resetlogs;
Перестворення керуючого файлу можна використовувати для зміни шляху до файлів даних і журнальним файлів. У цьому випадку відповідні рядки коригуються таким чином, щоб вони відображали нові шляхи і перейменування файлів командами SQL надалі не потрібно. Так само може бути змінено розмір журнальних файлів і виключені втрачені файли даних (у цьому випадку обов'язково використання resetlogs).
· Відсутня частина файлів даних, що не належать табличному простору system (sysaux)
Відсутні файли даних можуть бути видалені з бази з втратою всіх розміщених даних виконанням наступної команди
SQL> startup mount;
...> alter database datafile «шлях і ім'я файлу» offline drop;> alter database оpen;
4.3 Відновлення бази даних на локальній машині
У цьому випадку етап установки ПО відсутня, база даних відновлюється в той же oracle_home, що і початкова база, але при цьому змінюється її системний ідентифікатор. На відміну від попереднього сценарію в цьому необхідно здійснити всю послідовність дій з перейменування файлів.
· Для клонованої бази даних створюємо структуру каталогів для розміщення файлів бази і файлів трасування, надаємо необхідний права користувачеві і змінюємо файл параметрів ініціалізації. Крім перерахованих у пункті II.3 параметрів, повинні бути встановлені перевизначені параметри
SERVICE_NAME= _NAME= _NAME_SPACE=.
. встановлюємо змінну оточення oracle_sid
set oracle_sid=
. створюємо службу
<$ oracle_home> bin oradim.exe-new-sid -Intpwd <пароль sys internal>- Startmode manual
в результаті в сервісах з'явиться і стартує служба з ім'ям OracleService , а в директорії <$ oracle_h...