작업

[작업] 메뉴에는 [요약], [실행 중], [예측], [내역], [통지]의 다섯 가지 옵션이 있습니다. 각 옵션은 아래에 설명되어 있습니다.

요약

위쪽의 Summary 페이지에서는 총 Failed, Blocked, Chain stalled, Resource unavailable, Broken 및 Retry Scheduled 작업 수에 대한 개요를 제공합니다. 작업 타일을 누르면 해당하는 작업 목록이 아래 표 형식으로 표시됩니다. 모든 일정이 잡힌 작업을 표시하려면 필터를 제거합니다.

작업을 생성하려면 작업 생성 또는 편집을 참조하십시오.

작업 아이콘 작업 아이콘은 각 작업 행의 끝에서 사용할 수 있습니다. 다음 옵션 목록을 보려면 작업을 누릅니다.

  • 작업
    • 실행: 특정 작업을 실행합니다.

    • 편집: 작업 생성 또는 편집을 참조하십시오.

    • 삭제: 특정 작업을 삭제합니다.

    • 작업 사용/사용 안함: 사용으로 설정된 경우 스케줄러에서 처리할 작업을 선택합니다. 작업 상태(사용 여부)는 [작업 세부 정보] 페이지에 표시되며, 여기서 "사용" 속성은 TRUE 또는 FALSE로 표시됩니다.

  • 내역
    • 보고서: 로그 세부정보, 실행 상태, 실행 기간, 오류(있는 경우) 등을 비롯하여 작업 실행 내역을 보고서 형식으로 제공합니다.

    • 차트: 시각적 막대 차트 표현으로 작업 실행 내역을 제공합니다. 각 실행에 대해 실행 기간 및 사용된 CPU 시간이 제공됩니다. 체인의 작업에는 전체 작업에 대한 집계 정보가 표시됩니다. 시간 프레임을 변경하여 확대/축소 및 스크롤할 수 있는 개요 스크롤 막대가 있습니다. 선택한 작업 또는 모든 작업에 대해 해당 시간 프레임의 로그에서 모든 세부 정보를 표시할 수 있습니다. 또한 선택한 시간대의 모든 작업에 대해 간트 차트를 표시할 수 있습니다.

  • 작업 예측: 단일 작업(작업 메뉴에서 사용 가능) 또는 작업 집합(테이블의 도구 모음에서 사용 가능)에 대해 작업 예측 기능을 실행할 수 있습니다. 작업 집합의 경우 필터링을 사용하여 작업 집합의 범위를 좁힐 수 있습니다. Ctrl 키+클릭을 사용하여 일부 작업을 선택하면 선택한 작업에 대해서만 작업 예측이 실행됩니다. 선택한 작업이 없으면 나열된 모든 작업에 대해 예측이 실행됩니다. 세트에 포함된 모든 작업이 최종 예측에 포함되지는 않습니다. 정의된 달력(반복 간격)이 있는 작업만 포함됩니다. 일정을 인라인으로 정의하거나 일정, 창 또는 창 그룹을 사용하여 정의할 수 있습니다. 예측이 완료된 후 다른 확대/축소 레벨을 선택하고 스키마별로 결과를 필터링할 수 있습니다.

  • 작업 세부정보: 작업, 작업 클래스, 유형, 일정 등과 같은 작업 속성을 표시합니다. JSON 형식으로 속성을 보려면 JSON을 선택합니다. 작업의 정의에 따라 사용된 객체에 대한 세부 정보(예: 사용된 프로그램, PL/SQL 코드, 프로시저, 프로시저 종속성, 프로그램 인수, 작업 인수, 작업 클래스, 일정, 윈도우, 그룹의 윈도우와 함께 윈도우 그룹, 파일 감시자, 마지막 시작 날짜로부터 일주일의 내역을 표시하는 내역 차트)가 제공됩니다.

실행 중

Running 페이지에는 현재 실행 중인 작업 리스트가 표시됩니다. 중지, 편집, 내역, 작업 세부 정보 명령을 사용할 수 있습니다.

위에 설명된

내역

History 페이지는 사용자가 사용할 수 있는 모든 Scheduler 작업에 대한 로그 실행 세부 정보를 표시합니다. History 창을 사용하고 필터를 설정하여 데이터 양을 제한할 수 있습니다. 지연 간격을 제공하여 지연된 작업을 사용하여 필터링할 수 있습니다. 열 머리글을 눌러 그리드에서 순서를 지정할 수 있습니다.

예측

[예측] 페이지는 사용 가능한 모든 작업에 대한 작업 실행 예측을 제공합니다. 이 작업은 작업 수 및 예측 간격에 따라 완료하는 데 시간이 걸립니다. 사용 가능한 모든 작업에 대한 예측은 연결 사용자의 권한에 따라 달라집니다. 실행 후 작업 스키마를 기준으로 결과를 필터링할 수 있습니다.

Forecase 기능은 Jobs - Summary 페이지에서도 사용할 수 있습니다. 이 경우 사용 가능한 작업 리스트에서 작동합니다. 예측 기능을 사용하기 전에 작업을 필터링할 수 있습니다. 선택한 작업이 있는 경우 이 기능은 선택한 작업만 사용합니다.

내역 (간트 차트)

기록은 창 및 작업 실행 기록을 간트 차트 형식으로 나타냅니다. Windows 활성화 기록이 첫번째 행에 표시됩니다. 작업은 사용된 최대 CPU 시간에 따라 내림차순으로 정렬됩니다. 각 기간 활성화 및 작업 실행에 대한 세부 정보가 표시됩니다. 작업 요약은 작업 행의 레이블 위로 커서를 가져갈 때 사용할 수 있습니다.

위에서 설명한 대로

통지

스케줄러에 대해 전자메일 서버가 설정된 경우에만 통지를 생성할 수 있습니다.

통지 페이지에서는 작업 이벤트와 관련된 통지를 조회, 생성, 편집 및 삭제할 수 있습니다. 또한 페이지 오른쪽 상단에 있는 통지 전자메일 서버 아이콘을 눌러 전자메일 서버 세부정보를 볼 수 있습니다.

각 메시지에 대해 작업, 수신자 전자메일 주소 및 발신자(또는 발신자 없음)를 지정할 수 있으며 메시지 제목 및 본문을 수정하고 필터 조건을 설정할 수 있습니다. 수신자와 이벤트가 여러 개 제공된 경우 Oracle Scheduler는 각 조합 <수신자, 이벤트>에 대해 별도의 통지 레코드를 생성합니다. 각 통지의 컨텍스트 메뉴에 나타나는 집계된 편집을 사용하여 이러한 방식으로 생성된 통지 집합의 콘텐츠를 편집할 수 있습니다. 편집은 단일 통지의 콘텐츠를 편집합니다.

통지는 작업 이름, 작업 소유자, 수신자 및 이벤트별로 필터링할 수 있습니다. 통지 제거 아이콘을 눌러 일부 통지를 선택하고 제거할 수 있습니다. 선택된 통지가 없는 경우(Ctrl+클릭을 사용하여 단일 통지 선택 해제) 선택한 작업, 작업 및 수신자, 작업 및 이벤트, 작업 및 이벤트와 수신자에 대한 모든 통지를 제거할 수 있는 [통지 제거] 대화상자가 나타납니다.

직무 생성 또는 편집

이 섹션에서는 새 Oracle Scheduler 작업을 생성하거나 기존 작업을 편집하는 방법에 대해 설명합니다.

작업을 생성하기 위해 Database Actions는 내부적으로 Oracle Database PL/SQL Packages and Types Reference에 설명된 DBMS_SCHEDULER.CREATE_JOB 프로시저를 사용합니다.

  1. 오른쪽 맨 위의 [작업] 페이지에서 작업 생성을 누릅니다.
  2. Job Properties에서 다음 필드를 입력합니다.

    세부 정보

    • 사용: 이 옵션을 지정하면 유효성 검사가 수행되고 모든 검사가 성공할 경우 작업이 사용으로 설정됩니다. 이 옵션을 지정하지 않으면 작업이 생성되지 않습니다.
    • Name(이름): 작업의 이름입니다.
    • 설명: 작업을 설명하는 데 사용할 수 있는 선택적 텍스트 문자열입니다.
    • 유형: PL/SQL 블록, 체인, 내장 프로시저, 명명된 프로그램 또는 스크립트와 같이 작업에서 실행할 객체 유형입니다. 관련 객체를 선택할 수 있는 체인, 내장 프로시저 및 명명된 프로그램에 대한 추가 제어가 나타납니다.

      내장 프로시저의 경우 IN 파라미터가 있는 프로시저만 나열되며 IN OUT 또는 OUT 파라미터가 있는 프로시저는 허용되지 않습니다.

      선택한 스키마에 대한 스키마 레벨 및 패키지 레벨 프로시저가 나열되지만 필드에 프로시저 이름(또는 package_name.procedure_name)을 직접 입력할 수 있습니다.

    • 클래스: 이 작업이 속하는 작업 클래스의 이름입니다.

    실행 모드

    • 모드: 즉시(생성 시 즉시, 한 번만), 한 번(지정된 시간에 한 번), 반복, 대기열, 파일 감시자, 일정(명명된 일정 객체 사용), 창 그룹 작업을 실행하는 경우 Immediate 이외의 다른 항목을 지정하면 추가 정보를 입력하라는 메시지가 표시됩니다.

      반복의 경우 반복 간격을 수동으로 정의하거나 연필 아이콘을 눌러 날짜, 빈도, 평일 및 간격 값을 선택할 수 있습니다. Oracle 일정 구문(포함, 제외, 교차, 기간 및 기간별)의 일부 절은 지원되지 않으며 편집 아이콘을 누를 때 경고가 표시됩니다.

    대상

    • 로컬(로컬 시스템), 원격(원격 데이터베이스 작업의 데이터베이스 대상 또는 원격 외부 작업의 외부 대상) 또는 다중(제공된 대상 그룹과 연관된 모든 대상에서 작업이 실행됨) 작업에 대해 선택한 대상에 따라 로컬 인증서, 원격 인증서 및 대상 또는 대상 그룹을 선택합니다.

    속성

    • 자동 삭제: 작업이 완료된 후 자동으로 삭제될지 아니면 자동으로 사용 안함으로 설정될지 결정합니다.

    • 실패 시 다시 시작: 실패 시 작업을 다시 시작할 수 있는지 여부를 결정합니다.

    • 복구 시 다시 시작: 데이터베이스 실패 시 작업을 다시 시작할지 여부를 결정합니다.

    • 출력 저장: 사용으로 설정된 경우 로깅된 작업 실행의 경우 모든 작업 출력 및 오류 메시지가 *_JOB_RUN_DETAILS 뷰에 저장됩니다. 사용 안함으로 설정된 경우 출력 및 메시지가 저장되지 않습니다.

    • 기본 시간대 따르기: 작업 시작 날짜가 널인지 여부를 결정한 다음 기본 시간대 스케줄러 속성이 변경되면 스케줄러는 새 시간대를 따르도록 이 작업에 대한 다음 실행 날짜 및 시간을 재계산합니다.

    • 제한된 모드로 실행 허용: 사용으로 설정된 경우 작업 소유자가 이 모드 중 로그인할 수 있도록 허용된 경우 데이터베이스가 제한 모드일 때 작업을 실행할 수 있습니다.
    • 창 닫기 시 중지: 작업 일정이 창 또는 창 그룹인 경우 이 옵션을 사용으로 설정하면 연관된 창이 닫히면 작업이 중지되고, 사용 안함으로 설정하면 창이 닫힌 후 작업이 계속됩니다. (작업을 계속할 수 있는 경우에는 일반적으로 윈도우를 닫으면 Resource Plan이 변경되기 때문에 리소스 할당이 변경될 수 있습니다.)

    • 인스턴스 고정성: 이 속성은 Oracle RAC(Oracle Real Application Clusters) 환경에서 실행되는 데이터베이스에 대해서만 사용해야 합니다. 기본적으로 사용으로 설정되어 있습니다. 작업은 로드가 가장 적은 상태에서 Instance에서 실행되기 시작하고 이후에는 스케줄러가 마지막으로 실행된 Instance에서 실행을 시도합니다. 해당 Instance가 작동 중지되었거나 너무 오버로드되어 일정 기간 동안 새 작업을 시작하지 않으면 다른 Instance가 작업을 실행합니다. 실행 간격이 크면 instance_stickiness가 무시되고 작업이 비고정 작업인 것처럼 처리됩니다. instance_stickiness가 비활성화된 경우 작업의 각 instance는 사용 가능한 첫번째 instance에서 실행됩니다.
    • 병렬 인스턴스: 이벤트 기반 작업의 경우 이벤트가 발생할 경우 발생하는 상황과 해당 이벤트를 처리하는 이벤트 기반 작업이 이미 실행 중인지 결정합니다. 사용 안함으로 설정된 경우 새 이벤트가 무시됩니다. 사용으로 설정하면 이벤트의 모든 인스턴스에 대해 작업 인스턴스가 시작되고 각 작업 인스턴스는 경량 작업이므로 동일한 이벤트 기반 작업의 여러 인스턴스가 병렬로 실행될 수 있습니다.

    • 작업 스타일: 생성 중인 작업의 스타일: REGULAR(일반 작업) 또는 LIGHTWEIGHT(경량 작업). 경량 프로그램은 프로그램 객체를 참조해야 합니다. 자주 실행되는 단기 작업이 많을 때는 경량 작업을 사용합니다. 특정 상황에서 경량 작업을 사용하면 성능이 약간 향상될 수 있습니다.

    • 작업 우선순위: 이 작업과 동일한 클래스의 다른 작업에 상대적인 이 작업의 우선순위입니다. 한 클래스 내의 여러 작업이 동시에 실행되도록 스케줄링된 경우 작업 우선 순위는 해당 클래스의 작업이 작업 조정자에 의해 실행되도록 선택되는 순서를 결정합니다. 1부터 5까지의 값이 될 수 있으며 1은 작업 실행을 위해 가장 먼저 선택하는 값입니다.

    • 로깅 레벨: 로깅되는 정보의 양을 결정합니다. DBMS_SCHEDULER.LOGGING_OFF(로깅 없음), DBMS_SCHEDULER.LOGGING_FAILED_RUNS(실패 원인으로 실패한 작업만), DBMS_SCHEDULER.LOGGING_RUNS(이 클래스의 각 작업에서 모두 실행됨) 또는 DBMS_SCHEDULER.LOGGING_FULL(모든 작업에 대해 수행된 모든 작업).

      그러나 작업 클래스의 로깅 레벨이 작업에 대해 지정된 레벨보다 높으면(자세한 경우) 작업 클래스 로깅 레벨이 사용됩니다.

    • 인스턴스 ID: Oracle Real Application Clusters 환경에서 작업이 실행되어야 하는 인스턴스의 인스턴스 ID입니다.

    • 최대 실행: 작업의 최대 연속 일정이 잡힌 실행 수입니다.

    • 최대 실패 수: 일정이 잡힌 작업의 실행이 연속으로 실패할 수 있는 횟수를 초과하면 해당 작업이 자동으로 사용 안함으로 설정됩니다.

    • 이벤트 발생: 이벤트를 발생시키기 위해 작업 실행의 단계를 결정합니다.

    • 최대 실행 기간: 작업을 실행할 수 있는 최대 시간입니다. 해당 데이터 유형은 INTERVAL DAY TO SECOND입니다. 이 속성이 0이 아니고 null이 아닌 값으로 설정되고 작업 기간이 이 값을 초과하는 경우 스케줄러는 JOB_OVER_MAX_DUR 유형의 이벤트를 발생시킵니다. 그런 다음 작업을 계속할 수 있는지 여부를 결정하는 것은 이벤트 처리기에 달려 있습니다.

    • 일정 제한: 프로그램 실행이 취소되기 전에 일정이 잡힌 작업 시작과 실제 작업 시작 사이의 최대 지연 시간입니다.

    • 기본값으로 재설정: 모든 속성을 기본값으로 재설정합니다.

    NLS

    이 작업에 필요한 NLS 관련 등록 정보를 설정할 수 있습니다. 값을 입력하려면 값 열의 관련 필드에 입력합니다.

    새 작업의 경우 파라미터는 데이터베이스 세션에서 가져옵니다.

  3. DDL 창에서 작업을 생성하거나 편집할 때 생성되는 SQL 문을 검토하고 저장할 수 있습니다.
    • 새 작업의 경우 CREATE를 눌러 생성된 DDL 문을 확인합니다.

    • 작업을 편집할 때 UPDATE를 눌러 생성된 ALTER 문을 확인합니다.

    모두 마쳤으면 Apply를 누릅니다.

    출력 창에는 DDL 명령 결과가 표시됩니다. 오류가 있는 경우 해당 창으로 이동하여 오류를 수정하고 명령을 다시 실행합니다. 컨텐츠를 파일에 저장할 수 있습니다.