Как вы клонируете экземпляр оракула?

Как вы клонируете экземпляр оракула? По сути, я хочу в конечном итоге скопировать его из d:\oracle\oldname в d:\oracle\newname,

Я работаю с Oracle 10.2.

3 ответа

Решение

Изучите использование команды RMAN DUPLICATE. Я считаю, что это было введено в 9i, но, безусловно, доступно в 10g. Он берет на себя все те шаги, которые были необходимы при клонировании вручную, такие как переименование файлов данных, воссоздание управляющих файлов, сброс имени базы данных и т. Д.

Если у вас есть новая структура каталогов для файлов данных и журналов, вы можете просто установить постоянные параметры запуска клона, чтобы автоматически преобразовать их в новый формат / местоположение с помощью спецификации замены строк. Клонирование становится таким же простым, как подключение к цели ("clone from"), aux ("clone to") и базам данных каталога RMAN, а также команду RMAN "DUPLICATE DATABASE to (myNewDBname)". Вы также можете установить "до времени", чтобы поднять клон на более ранний момент времени.

Oracle 11g добавляет возможность клонирования непосредственно из действующей базы данных.

Кстати, если вы не создаете резервную копию с помощью RMAN, то отбросьте все остальное и начните делать это сейчас!

Я полагаю, вы хотите другое имя экземпляра на клон?

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

Я думаю, что это будет в духе:

  • Сделайте резервную копию вашей базы данных
  • Выключите вашу базу данных
  • Создайте новую базу данных с тем же SID, что и исходный
  • Восстановить в новую базу данных
  • экспорт ORACLE_SID= новое имя
  • Измените pfile или spfile, чтобы отразить новое расположение контрольного файла.
  • Создать новый файл паролей orapwd file=orapw password=?? Записи =5
  • Запустите новую базу данных
  • Запустите старую базу данных

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

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

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

  1. Скопируйте файлы холодной / горячей резервной копии в новую структуру каталогов.
  2. Измените файл init.ora для нового экземпляра.
  3. Проблема STARTUP MOUNT вошел в систему как пользователь sysdba
  4. Запустите следующие команды:

    conn / as sysdba

    STARTUP NOMOUNT СОЗДАТЬ УСТАНОВЛЕННУЮ УПРАВЛЯЮЩУЮ УСТАНОВКУ БАЗЫ ДАННЫХ "NEWNAME" ПЕРЕЗАГРУЗКИ MAXLOGFILES xx MAXLOGMEMBERS xx MAXDATAFILES xxx МАКСИМАЛЬНЫЕ СРЕДСТВА xx
    ГРУППА 2 'd:\oracle\NEWNAME\REDO02.LOG' РАЗМЕР XXM,
    ГРУППА 3 'd:\oracle\NEWNAME\REDO03.LOG' ДАННЫЕ РАЗМЕРА XXM
    'D: \ оракул \ NEWNAME \ SYSTEM.DBF',
    'D: \ оракул \ NEWNAME \ undotbs.DBF',
    'D: \ оракул \ NEWNAME \ USERS.DBF',
    'D: \ оракул \ NEWNAME \ sysaux.DBF',
    'd: \ oracle \ NEWNAME \ TOOLS.DBF' - любые другие файлы в вашей базе данных также должны быть переименованы. CHARACTER SET WE8ISO8859P1; - отрегулируйте по необходимости

    ALTER DATABASE OPEN RESETLOGS;

и вы, вероятно, захотите сделать что-то вроде этого:

ALTER TABLESPACE TEMP ADD TEMPFILE 'd: \ oracle \ newname \ temp.dbf' РАЗМЕР 20М ПОВТОРИТЬ АВТОМАТИЧЕСКОЕ ИЗДАНИЕ НА СЛЕДУЮЩИЙ 20М МАКС. РАЗМЕР НЕОГРАНИЧЕННЫЙ;

Это должно вас закрыть...

Другие вопросы по тегам