Archive Hang 발생시 해결 방법.
Archive Hang 발생시 해결 방법.
archive mode일 때는 logfile에서 archive file에 내려써서 저장하는데, 이때 권한이 바뀌면, archive file에 저장이 안되므로 hang이 발생한다.
1. archive mode인지 조회한다.
2. /data 디렉토리의 하위디렉토리의 상세사항을 조회한다.
3. archive 파일의 권한을 root소유로 변경한다.
4.log switch를 일으키면, 바로 logfile에 저장이 되는데, archive mode에서는 이 logfile에 적혀진 것을 archive file에 따로 저장을 한다.
그래서 logswitch를 일으켜보면 hang이 걸릴지 안걸릴지 알 수 있다.
5. 새로운 터미널 창에서 얼럿로그를 확인한다. -> archive log file을 저장해야 하는 디렉토리에 oracle 계정이 쓸 권한이 없어서 Log switch가 발생해도 아카이빙을 못하기 때문에 발생한 에러.
6. 또 새로운 창에서 권한을 변경한 후 다시 확인해본다.
7. log switch를 다시 일으켜 보면, 원래 hang이 걸렸던 창에서 hang이 풀린다.
만약에 위와 같이 해도 Hang이 사라지지 않을 경우. |
다른 터미널창을 하나 더 열어, 파라미터를 변경 후 archiver를 재시작한다.
SQL> alter system set log_archive_dest_state_1=defer; SQL> alter system archive log stop;
|