pfile을 사용중이라면, 해당 파일에 그냥 추가하고 다시 startup을 시키면 되지만,
spfile은 어떻게 할까요?
---> 맞습니다. 한번 써보죠(결론은 포스팅의 맨 마지막에서 확인)
1. 일단 현재상황 확인
_allow_resetlogs_corruption 의 value가 FALSE인 것을 확인합시다.
2. ALTER SYSTEM SET으로 파라미터 변경시도
안됩니다 왜 안될까요?
'_' 문자가 invalid character이기 때문입니다.
3. 다시 시도 : 해당 파라미터를 " " 으로 감싸고 변경해봅시다
잘되네요!!
4. 그럼 변경을 확인하기 위해 shutdown 후 startup 해서 확인해보도록 하겠습니다.
_allow_resetlogs_corruption의 VALUE 가 TRUE로 되었습니다.!
5. 오픈 이후 히든파라미터는 위험하므로 항상 원래값으로 변경시켜 줍시다.
alter system set "_allow_resetlogs_corruption"=FALSE sope=spfile;
spfile은 어떻게 할까요?
alter system set을 쓰면 되지!!
---> 맞습니다. 한번 써보죠(결론은 포스팅의 맨 마지막에서 확인)
1. 일단 현재상황 확인
현재상황 SQL> l 1 select a.ksppinm name, b.ksppstvl value,b.ksppstdf deflt, 2 decode (a.ksppity, 1, 'boolean', 3 2, 'string', 4 3, 'number', 5 4, 'file', 6 a.ksppity) type, 7 a.ksppdesc description 8 from sys.x$ksppi a, sys.x$ksppcv b 9 where a.indx = b.indx and a.ksppinm like '\_%' escape '\' 10 and a.ksppinm like '%resetlogs%' 11 order by name 12* SQL> / NAME VALUE DEFLT TYPE DESCRIPTION -------------------- ---------- ---------- ---------- -------------------------------------------------- _allow_resetlogs_cor FALSE TRUE boolean allow resetlogs even if it will cause corruption ruption _no_recovery_through FALSE TRUE boolean no recovery through this resetlogs operation _resetlogs
_allow_resetlogs_corruption 의 value가 FALSE인 것을 확인합시다.
2. ALTER SYSTEM SET으로 파라미터 변경시도
SQL> alter system set _allow_resetlogs_corruption=TRUE scope=spfile; alter system set _allow_resetlogs_corruption=TRUE scope=spfile * ERROR at line 1: ORA-00911: invalid character
안됩니다 왜 안될까요?
'_' 문자가 invalid character이기 때문입니다.
3. 다시 시도 : 해당 파라미터를 " " 으로 감싸고 변경해봅시다
SQL> alter system set "_allow_resetlogs_corruption"=TRUE scope=spfile; System altered.
잘되네요!!
ALERT LOG에도 바뀌었다고 뜹니다.
Thu Mar 01 23:17:45 KST 2012
Thu Mar 01 23:17:45 KST 2012
ALTER SYSTEM SET _allow_resetlogs_corruption=TRUE SCOPE=SPFILE;
4. 그럼 변경을 확인하기 위해 shutdown 후 startup 해서 확인해보도록 하겠습니다.
SQL> l 1 select a.ksppinm name, b.ksppstvl value,b.ksppstdf deflt, 2 decode (a.ksppity, 1, 'boolean', 3 2, 'string', 4 3, 'number', 5 4, 'file', 6 a.ksppity) type, 7 a.ksppdesc description 8 from sys.x$ksppi a, sys.x$ksppcv b 9 where a.indx = b.indx and a.ksppinm like '\_%' escape '\' 10 and a.ksppinm like '%resetlogs%' 11* order by name SQL> / NAME VALUE DEFLT TYPE DESCRIPTION -------------------- ---------- ---------- ---------- -------------------------------------------------- _allow_resetlogs_cor TRUE FALSE boolean allow resetlogs even if it will cause corruption ruption _no_recovery_through FALSE TRUE boolean no recovery through this resetlogs operation _resetlogs
_allow_resetlogs_corruption의 VALUE 가 TRUE로 되었습니다.!
5. 오픈 이후 히든파라미터는 위험하므로 항상 원래값으로 변경시켜 줍시다.
alter system set "_allow_resetlogs_corruption"=FALSE sope=spfile;
결론 :
spfile 을 이용할때 hidden parameter을 이용하기 위해서는
평소처럼 ALTER SYSTEM SET을 이용하면 되는데, '_' 가 인식이 안되므로
"_allow_resetlogs_corruption"=TRUE 처럼 파라미터에 " "을 감싸줘야합니다.
'참고글 및 문제해결 > 문제해결' 카테고리의 다른 글
RAC 운영중 스토리지 문제(lvscan 시 uuid 뜨는 문제) (0) | 2012.03.09 |
---|---|
RMAN 사용 중 ORA-07217: sltln: environment variable cannot be evaluated. (2) | 2012.03.09 |
ORA-38760: This database instance failed to turn on flashback database (0) | 2012.02.26 |
RMAN-20035: invalid high recid (0) | 2012.02.23 |
참조키 걸려고 할때 부모컬럼의 자료와 자식컬럼의 자료가 맞지 않아서 이어지지 않는 경우 (; exception테이블, spool, vi로 파일비교 사용예제포함) (0) | 2012.02.21 |