09.06.2007 19:07
alex_K
 
Как переименовать СИД?
Есть база, работающая, тоесть копия, мне надо переименовать сид, чтобы она работала под другим именем.
13.06.2007 07:24
alex_K
 
Всем спасибо, переименовал базу, почти так же как описано в ссылке только немного по другому, чуточку проще.
13.06.2007 07:53
akonev
 
ну дак если проще - опиши и выложи в ту же ветку.
еще кому-нить пригодится.
13.06.2007 08:33
stalker
 
Цитата:
Andrew_Konev ну дак если проще - опиши и выложи в ту же ветку.
еще кому-нить пригодится.
у меня было так
Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-2000 Microsoft Corp.

C:\>set nls_lang=american_america.cl8mswin1251

C:\>svrmgrl

Oracle Server Manager Release 3.1.6.0.0 - Production

Copyright (c) 1997, 1999, Oracle Corporation. All Rights Reserved.

Oracle8i Enterprise Edition Release 8.1.6.3.0 - Production
JServer Release 8.1.6.3.0 - Production

SVRMGR> connect internal/ORACLE@DBREN
ORA-12154: TNS:could not resolve service name
SVRMGR> connect internal/ORACLE@DBREN
Connected.
SVRMGR> ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
Statement processed.
SVRMGR> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SVRMGR>

-----------------------------------------------------------------
Останавливаем сервис *DBREN
-----------------------------------------------------------------

В initdbren.ora меняем все dbren на dbren2

Переименовываем все каталоги dbren на dbren2 (где pfile и где сами
файлы базы данных)

В C:\ORACLE\admin\dbren2\udump\ берем созданный .trc
Пример того, что идет в начале этого файла:
--------------------------------
Dump file C:\ORACLE\admin\dbren\udump\ORA01580.TRC
Mon Jul 29 13:39:22 2002
ORACLE V8.1.6.3.0 - Production vsnsta=0
vsnsql=e vsnxtr=3
Windows 2000 Version 5.0 Service Pack 2, CPU type 586
Oracle8i Enterprise Edition Release 8.1.6.3.0 - Production
JServer Release 8.1.6.3.0 - Production
Windows 2000 Version 5.0 Service Pack 2, CPU type 586
Instance name: dbren
--------------------------------

и стираем все до
startup nomount

Меняем все dbren в этом файле на dbren2

Меняем строку Startup nomount на
STARTUP NOMOUNT PFILE=%ORACLE_HOME%\DATABASE\INITdbren2.ORA

Меняем Reuse DataBase на Set Database
(пробуем менять опцию ResetLogs на NoResetLogs)

Убираем строку RECOVER DATABASE

Сохраняем файлик и меняем его имя на CHNAME.SQL

В итоге должно получиться что-то вроде такого :

--------------------------------
STARTUP NOMOUNT PFILE=C:\ORACLE\admin\dbren2\pfile\initdbren.ora
CREATE CONTROLFILE SET DATABASE "dbren2" RESETLOGS NOARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 2
MAXDATAFILES 254
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 'C:\ORACLE\ORADATA\dbren2\REDO01.LOG' SIZE 1M,
GROUP 2 'C:\ORACLE\ORADATA\dbren2\REDO02.LOG' SIZE 1M,
GROUP 3 'C:\ORACLE\ORADATA\dbren2\REDO03.LOG' SIZE 1M
DATAFILE
'C:\ORACLE\ORADATA\dbren2\SYSTEM01.DBF',
'C:\ORACLE\ORADATA\dbren2\RBS01.DBF',
'C:\ORACLE\ORADATA\dbren2\USERS01.DBF',
'C:\ORACLE\ORADATA\dbren2\TEMP01.DBF',
'C:\ORACLE\ORADATA\dbren2\TOOLS01.DBF',
'C:\ORACLE\ORADATA\dbren2\INDX01.DBF'
CHARACTER SET CL8MSWIN1251
;
# Recovery is required if any of the datafiles are restored backups,
# or if the last shutdown was not normal or immediate.
# Database can now be opened normally.
ALTER DATABASE OPEN;
# No tempfile entries found to add.
#
--------------------------------

Удаляем
CONTROL01.CTL
CONTROL02.CTL
CONTROL03.CTL
из ORADATA\DBREN2

и запускаем @chname.sql из srvmgrl

Вот, как у меня это было (с самого начала
-----> мои комментарии к предыдущей строке):

-----------------------------------------------------------------

Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-2000 Microsoft Corp.

C:\>set nls_lang=american_america.cl8mswin1251

C:\>svrmgrl

Oracle Server Manager Release 3.1.6.0.0 - Production

Copyright (c) 1997, 1999, Oracle Corporation. All Rights Reserved.

Oracle8i Enterprise Edition Release 8.1.6.3.0 - Production
JServer Release 8.1.6.3.0 - Production

SVRMGR> connect internal/ORACLE@DBREN
ORA-12154: TNS:could not resolve service name

--------> Не был запущен сервис

SVRMGR> connect internal/ORACLE@DBREN
Connected.
SVRMGR> ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
Statement processed.
SVRMGR> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SVRMGR> connect internal/oracle@dbren2
ORA-12154: TNS:could not resolve service name

--------> Не были прописаны в tnsnames.ora

SVRMGR> connect internal/oracle@dbren2
Connected.
SVRMGR> @c:\chname.sql
ORA-01081: cannot start already-running ORACLE - shut it down first
CREATE CONTROLFILE SET DATABASE "dbren2" RESETLOGS NOARCHIVELOG
*
ORA-01503: CREATE CONTROLFILE failed
ORA-00200: controlfile could not be created
ORA-00202: controlfile: 'C:\ORACLE\oradata\dbren2\control01.ctl'
ORA-27038: skgfrcre: file exists
OSD-04010: zpwp}p ~3x <8~wtp>, p :py{ vu 8u8ru
ALTER DATABASE OPEN
*
ORA-01507: database not mounted

--------> Не были удалены control*.ctl

SVRMGR> shutdown immediate;
ORA-01507: database not mounted
ORACLE instance shut down.
SVRMGR> @c:\chname.sql
ORACLE instance started.
Total System Global Area 155001780 bytes
Fixed Size 70580 bytes
Variable Size 43057152 bytes
Database Buffers 111796224 bytes
Redo Buffers 77824 bytes
CREATE CONTROLFILE SET DATABASE "dbren2" RESETLOGS NOARCHIVELOG
*
ORA-01503: CREATE CONTROLFILE failed
ORA-00200: controlfile could not be created
ORA-00202: controlfile: 'C:\ORACLE\oradata\dbren2\control01.ctl'
ORA-27038: skgfrcre: file exists
OSD-04010: zpwp}p ~3x <8~wtp>, p :py{ vu 8u8ru
ALTER DATABASE OPEN
*
ORA-01507: database not mounted
SVRMGR> @c:\chname.sql
ORA-01081: cannot start already-running ORACLE - shut it down first
Statement processed.
ALTER DATABASE OPEN
*
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
-----------------------------------------------------------------

После этого можно спокойно коннектиться на вновь созданную базу.
13.06.2007 10:27
OlegON
 
Не все просмотрел, некогда, но все же, напоминаю, что для таких работ правильнее не
Цитата:
connect internal/ORACLE@DBREN
а
Цитата:
set oracle_sid=DBREN
connect internal/ORACLE
Часовой пояс GMT +3, время: 11:53.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.