오라클의 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가 기본적으로 적용되는 경우도 있다.

Posted by neo-orcl
,

error in invoking target 'agent agent oratclsh nmo nmb' of makefile '/oracle/product/102/db/sysmanlib/ins_sysman.mk'

이런 에러가 나타날 수 있는데 해당 에러는 EM을 사용하지 않는다면 무시해도 된다.
만약 이 에러를 해결하려고 한다면 IBM 엔지니어에게 요청해 아래 FIX를 적용해달라고 해야 한다.

For AIX 6.1 TL6 SP1, IBM have released fix IZ88711:

IZ89304 for AIX 6.1 TL3
IZ89302 for AIX 6.1 TL4
IZ89300 for AIX 6.1 TL5
IZ88711 or IZ89514 for AIX 6.1 TL6 - check with IBM
IZ89165 for AIX 7.1 TL0 SP2

If these errors occur on AIX 6.1 TL4 SP6/SP7, you may alternatively be hitting the AIX defect below:

IZ44217 CRASH CAUSED BY STALE FILE DESCRIPTOR IN FORKED CHILD

이후 링크를 다시 한다.

% make -f $ORACLE_HOME/sysman/lib/ins_emagent.mk relink_sharedobj SHAREDOBJ=libnmemso

Posted by neo-orcl
,