유효 항목: Oracle 타겟
Oracle 매개변수 OPEN_CURSORS의 값은 Post 프로세스에서 예상되는 성능 수준을 지원할 수 있을 만큼 높게 설정되어야 합니다. 이 매개변수는 프로세스(예: Post)가 열 수 있는 최대 커서 수를 정의합니다.
내부적으로 Post는 OPEN_CURSORS 값에서 루틴 호출에 필요한 10을 뺀 열려 있는 최대 총 커서 수를 설정합니다. event_log에서 이 값을 확인합니다. 다음 예에서는 OPEN_CURSORS가 512로 설정됩니다.
Notice: sp_opst_mt (for o.oracle-o.oracle queue oracle) Post will not open more than 502 cursors (OPEN_CURSORS – 10).
Post는 열려 있는 커서 수에 대한 레코드를 유지합니다. Post는 최대 커서 수를 초과하는 것을 감지하면 가장 최근에 사용된 세션에서 가장 최근에 사용된 커서를 닫습니다.
커서 부족을 방지하기 위해 Post 프로세스는 시작 시 OPEN_CURSORS 값을 쿼리합니다. 값이 충분히 높지 않으면 Post는 event_log에 다음 경고를 작성합니다.
Warning: (sp_opst_mt for o.oracle-o.oracle queue oracle)Oracle parameter 'OPEN_CURSORS' is < number. Check 'OPEN_CURSORS' setting.
OPEN_CURSORS 값이 없으면 수정하거나 추가할 수 있습니다.
OPEN_CURSORS 값을 보려면 다음 SQL 문을 사용하여 데이터베이스를 쿼리합니다.
select value from v$parameter where name = 'open_cursors';
Post 프로세스에 충분히 높은 OPEN_CURSORS 값을 추정하려면 다음을 수행합니다.
다음 공식을 사용하여 SharePlex(및 타겟 데이터에 접근할 수 있는 기타 애플리케이션)를 지원하기 위한 OPEN_CURSORS의 올바른 설정을 확인합니다.
SQL 캐시 활성화(기본값): 기본적으로 Post는 완료 후 닫히는 루틴 호출을 위해 10개의 커서와 트랜잭션당 최소 7개의 커서(기본 최소값 2개 + 추가 5개)를 예약해야 합니다. 공식은 다음과 같습니다.
10 + (최대 동시 트랜잭션 수 x 7) = 필요한 최소 열린 커서
SQL 캐시 비활성화: Post 프로세스는 완료 후 닫히는 루틴 호출을 위해 10개의 커서와 트랜잭션당 최소 2개의 커서를 예약해야 합니다. 공식은 다음과 같습니다.
10 + (최대 동시 트랜잭션 수 x 2) = 필요한 최소 열린 커서