오라클의 filesystemio_options는 asynch, directio, setall 이 가능하다.
보통 기본값은 OS에 따라 다르나 none 혹은 null이거나 asynch 이다.
왠만한 파일시스템은 asynch를 기본적으로 지원하고 directio도 거의 지원한다.
asynch는 최근 OS에서 거의 문제가 되지 않으나 Directio는 백업과 관련한 문제가 생길 수 있다.
Directio를 적용하는 방법이 두가지 있는데
1. filesystem을 mount하는 단계에서 적용한다 즉 OS Level에서 적용하는 방법이다.
2. application Level에서 적용하는 방법이다. 오라클의 경우 filesystemio_options 파라미터를 directio 혹은 setall로 적용한다.
2번 방법을 사용해 Application에서 direct I/O 혹은 Concurrent I/O(direct I/O의 enhanced 기술이라고 보면 된다) mode로 오픈한 파일은 OS에 따라 꼭 같은 mode로 접근해야지만 접근이 가능하게 된다.
AIX5.3의 경우가 그랬다. cp가 불가능한 전혀 처음 보는 특이한 현상을 보였다.
이를 해결하는 방법은 결국 filesystem 마운트 단계에서 cio/dio 옵션으로 마운트 하는 것이다.
이후에는 오라클의 filesystemio_options에서 directio나 setall를 설정하지 않아도 자동으로 directio 혹은 concurrent io가 작동하게 된다.
오라클 버전에 따라, OS버전, OS종류에 따라 direct/concurrent io를 사용하더라도 복사나 접근이 가능/불가능 여부가 틀리니 핫백업이 안될 경우를 대비해 꼭 확인하도록 하자.
현재는 AIX 5.3 + Oracle 10gR2에서 발생하는걸 확인했다.
※filesystem에 따라 direct io가 기본적으로 적용되는 경우도 있다.
'TroubleShoot' 카테고리의 다른 글
vip change 이후 리스너에 ASM이 안보일 때, ORA-12537 (0) | 2014.03.04 |
---|---|
DB can't startup after lock_sga=true (ORA-27126) (0) | 2014.01.24 |
RAC 환경에서 ORA-12545가 간헐적으로 발생 (0) | 2013.10.15 |
ocssd.log characteristic of 10g R2 RAC when node eviction (0) | 2013.08.06 |
롤백이 너무 길어 테이블 lock된 현상 (0) | 2013.06.21 |