Переименование SID
1. Запустить базу.
2. Выполнить команду ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
3. Остановить базу через normal, transactional, immediate, НО НЕ abort!
4. В полученном файле убрать все лишние строки (начинающиеся на * и т.д.),
установить CREATE CONTROLFILE REUSE SET DATABASE "
установить ALTER DATABASE OPEN RESETLOGS;
(RESETLOGS важно и в CREATE CONTROLFILE и в ALTER DATABASE OPEN, иначе будут ошибки)
изменить везде в путях к .DBF-файлам и REDO-логам
=========== ВНИМАНИЕ !!! ОЧЕНЬ ВАЖНО !!! ==================================
Команду STARTUP NOMOUNT заменить на
STARTUP PFILE="
===========================================================================
Полученный трассировочный файл условно назовем CTL.SQL
5. Переименовать каталоги
6. Переименовать файл
7. В самом init файле изменить параметры
db_name
instance_name
service_names
control_files
log_archive_dest_n
background_dump_dest
core_dump_dest
user_dump_dest
8. Переименовать службу:
c:\>oradim -edit -sid
9. В реестре установить значение параметра ORA_
(чтобы вместе с запуском службы не запускалась база)
10. Изменить tnsnames.ora
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = #host)(PORT = #port))
)
(CONNECT_DATA =
(SERVICE_NAME =
)
)
11. Изменить listener.ora
SID_LIST_LISTENER =
(SID_LIST =
...
(SID_DESC =
(GLOBAL_DBNAME =
(ORACLE_HOME =
(SID_NAME =
)
...
)
ПЕРЕЗАПУСТИТЬ ПЕРЕИМЕНОВАННУЮ СЛУЖБУ.
ПЕРЕЗАПУСТИТЬ LISTENER.
12. Создать файл init
IFILE='
13. Создать файл паролей:
c:\>orapwd file=pwd
14. Зайти в svrmgrl (или в sqlplus).
connect internal@
@CTL; (см. п.2-4)
15. Вперед на пиво!