Amazon Relational Database Service
사용 설명서 (API 버전 2014-10-31)

Oracle Application Express

Amazon RDS는 APEXAPEX-DEV 옵션 사용을 통해 Oracle Application Express(APEX)를 지원합니다. Oracle APEX는 웹 기반 애플리케이션을 위한 런타임 환경 또는 전체 개발 환경으로 배포할 수 있습니다. 개발자들은 Oracle APEX를 사용하여 웹 브라우저 내에서 전체 애플리케이션을 빌드할 수 있습니다. 자세한 내용은 Oracle 문서의 Oracle Application Express를 참조하십시오.

Oracle APEX는 다음과 같은 두 가지 주요 구성 요소로 구성됩니다.

  • 리포지토리 - APEX 애플리케이션 및 구성 요소에 대한 메타데이터를 저장합니다. 리포지토리는 Amazon RDS DB 인스턴스에 설치되는 테이블, 인덱스 및 기타 객체로 구성됩니다.

  • listener - Oracle APEX 클라이언트와의 HTTP 통신을 관리합니다. 리스너는 웹 브라우저에서 수신되는 유입 연결을 허용하고 처리를 위해 해당 연결을 Amazon RDS DB 인스턴스에 전달한 다음, 리포지토리의 결과를 브라우저로 다시 보냅니다. Oracle 12c에서 APEX Listener의 이름이 Oracle Rest Data Services(ORDS)로 변경되었습니다.

Amazon RDS APEX 옵션을 DB 인스턴스에 추가하면 Amazon RDS에서 Oracle APEX 리포지토리만 설치합니다. Amazon EC2 인스턴스, 회사의 온프레미스 서버 또는 사용자의 데스크톱 컴퓨터와 같은 별도의 호스트에 Oracle APEX Listener를 설치해야 합니다.

APEX 옵션은 DB 인스턴스에 대한 DB 인스턴스 클래스의 스토리지를 사용합니다.

다음은 Amazon RDS에서 Oracle 12c 버전 12.2용 Oracle APEX에 대한 지원 버전과 대략적인 스토리지 요구 사항입니다.

  • Oracle APEX 버전 5.1.4.v1 – 220MiB

다음은 Amazon RDS에서 Oracle 12c 버전 12.1용 Oracle APEX에 대한 지원 버전과 대략적인 스토리지 요구 사항입니다.

  • Oracle APEX 버전 5.1.4.v1 – 220MiB

  • Oracle APEX 버전 5.1.2.v1 – 150MiB

  • Oracle APEX 버전 5.0.4.v1 – 140MiB

  • Oracle APEX 버전 4.2.6.v1 – 160MiB

다음은 Amazon RDS에서 Oracle 11g용 Oracle APEX에 대한 지원 버전과 대략적인 스토리지 요구 사항입니다.

  • Oracle APEX 버전 5.1.4.v1 – 220MiB

  • Oracle APEX 버전 5.1.2.v1 – 150MiB

  • Oracle APEX 버전 5.0.4.v1 – 140MiB

  • Oracle APEX 버전 4.2.6.v1 – 160MiB

  • Oracle APEX 버전 4.1.1.v1 – 130MiB

참고

DB 인스턴스에 사용되는 DB 인스턴스 클래스에 하나의 vCPU만 있는 경우 Oracle 11g용 Oracle APEX 5가 지원되지 않습니다. DB 인스턴스 클래스에 대한 자세한 내용은 DB 인스턴스 클래스 을(를) 참조하십시오.

Oracle APEX 및 APEX Listener 사전 요구사항

다음은 Oracle APEX 및 APEX Listener 사용을 위한 사전 요구사항입니다.

  • DB 인스턴스에서 관리 작업을 수행하려면 SQL*Plus가 필요합니다.

  • 또한 Oracle APEX Listener 역할을 하는 호스트 컴퓨터에 다음과 같은 소프트웨어를 설치해야 합니다.

    • Java Runtime Environment(JRE).

    • Oracle Net Services - Amazon RDS 인스턴스에 연결할 수 있도록 Oracle APEX Listener를 활성화합니다.

Amazon RDS APEX 옵션 추가

Amazon RDS APEX 옵션을 DB 인스턴스에 추가하는 일반적인 프로세스는 다음과 같습니다.

  1. 새 옵션 그룹을 생성하거나 기존 옵션 그룹을 복사 또는 수정합니다.

  2. 해당 옵션을 옵션 그룹에 추가합니다.

  3. 옵션 그룹을 DB 인스턴스에 연동시킵니다.

Amazon RDS APEX 옵션을 추가하는 경우 DB 인스턴스를 자동으로 다시 시작하는 동안 잠시 작동이 중단됩니다.

DB 인스턴스에 APEX 옵션을 추가하려면

  1. 사용할 옵션 그룹을 결정합니다. 새 옵션 그룹을 생성하거나 기존 옵션 그룹을 사용합니다. 기존 옵션 그룹을 사용하려면 다음 단계로 건너뛰십시오. 그렇지 않으면 다음 설정을 사용하여 사용자 지정 DB 옵션을 생성합니다.

    1. [Engine]에서 사용할 Oracle 버전을 선택합니다. 모든 버전에서 APEX 옵션이 지원됩니다.

    2. [Major engine version]에서 [11.2] 또는 [12.1]을 선택합니다.

    자세한 내용은 옵션 그룹 생성 단원을 참조하십시오.

  2. 해당 옵션을 옵션 그룹에 추가합니다. Oracle APEX 런타임 환경만 배포하려면 APEX 옵션만 추가합니다. 전체 개발 환경을 배포하려면 APEXAPEX-DEV 옵션을 모두 추가합니다.

    • Oracle 12c의 경우, APEXAPEX-DEV 옵션을 추가합니다.

    • Oracle 11g는 먼저 [XMLDB] 옵션을 사전 요구사항으로 추가한 다음 [APEX] 및 [APEX-DEV] 옵션을 추가합니다.

    [ Version]에서 사용하고자 하는 APEX 버전을 선택합니다. 버전을 선택하지 않으면 11g의 기본값은 버전 4.1.1.v1이고, 12c의 기본값은 버전 4.2.6.v1입니다.

    중요

    하나 이상의 DB 인스턴스에 이미 연결되어 있는 기존 옵션 그룹에 APEX 옵션을 추가하면 모든 DB 인스턴스가 자동으로 다시 시작되는 동안 인스턴스가 잠시 중단됩니다.

    옵션 추가에 대한 자세한 내용은 옵션을 옵션 그룹에 추가하기을(를) 참조하십시오.

  3. 옵션 그룹을 새 DB 인스턴스 또는 기존 DB 인스턴스에 적용합니다:

퍼블릭 사용자 계정 잠금 해제

Amazon RDS APEX 옵션을 설치한 후 APEX 퍼블릭 사용자 계정 암호를 변경한 다음 계정을 잠금 해제해야 합니다. 이 작업은 Oracle SQL*Plus 명령줄 유틸리티를 사용하여 수행할 수 있습니다. DB 인스턴스에 마스터 사용자로 연결하고 다음 명령을 실행합니다. new_password를 원하는 암호로 바꿉니다.

alter user APEX_PUBLIC_USER identified by new_password; alter user APEX_PUBLIC_USER account unlock;

Oracle APEX용 RESTful 서비스 구성

APEX에 RESTful 서비스를 구성하려면(APEX 4.1.1.V1에는 필요하지 않음) SQL*Plus를 사용하여 마스터 사용자로서 DB 인스턴스에 연결한 후 rdsadmin.rdsadmin_run_apex_rest_config 저장 프로시저를 실행하십시오. 저장 프로시저를 실행할 때 다음 사용자를 위한 암호를 제공합니다.

  • APEX_LISTENER

  • APEX_REST_PUBLIC_USER

저장 프로시저는 이들 사용자를 위해 새 데이터베이스 계정을 만드는 apex_rest_config.sql 스크립트를 실행합니다.

참고

Oracle APEX 버전 4.1.1.v1을 위한 구성은 필요하지 않습니다. 이 Oracle APEX 버전에 한해 저장 프로시저를 실행할 필요가 없습니다.

다음 명령으로 저장 프로시저를 실행합니다.

exec rdsadmin.rdsadmin_run_apex_rest_config('apex_listener_password', 'apex_rest_public_user_password');

APEX Listener 설치 및 구성

이제 Oracle APEX에서 사용하기 위해 Listener를 설치하고 구성할 수 있습니다. 이를 위해 다음 제품 중 하나를 사용할 수 있습니다.

  • APEX 버전 5.0 이상은 Oracle Rest Data Services(ORDS) 사용

  • APEX 버전 4.1.1은 Oracle APEX Listener 버전 1.1.4 사용

  • Oracle HTTP 서버 및 mod_plsql

참고

Amazon RDS는 PL/SQL 게이트웨이가 포함된 Oracle XML DB HTTP 서버를 지원하지 않으므로, 이 게이트웨이를 APEX Listener로 사용할 수 없습니다. 일반적으로 Oracle은 인터넷 기반 애플리케이션용으로 포함된 PL/SQL 게이트웨이 사용을 권장합니다.

Amazon EC2 인스턴스, 회사의 온프레미스 서버 또는 사용자의 데스크톱 컴퓨터와 같은 별도의 호스트에 APEX Listener를 설치해야 합니다.

다음 절차에서는 APEX Listener를 설치하고 구성하는 방법을 보여 줍니다. 여기에서는 호스트의 이름이 myapexhost.example.com이고 이 호스트에서 Linux를 실행 중이라고 가정합니다.

APEX Listener를 설치하고 구성하려면

  1. myapexhost.example.comroot로 로그인합니다.

  2. APEX Listener 설치를 소유할 권한 없는 OS 사용자를 생성합니다. 다음 명령은 apexuser라는 새 사용자를 생성합니다.

    useradd -d /home/apexuser apexuser

    다음 명령은 새로운 사용자에게 암호를 할당합니다.

    passwd apexuser;
  3. myapexhost.example.comapexuser로 로그인하고, Oracle의 APEX 설치 파일을 /home/apexuser 디렉터리에 다운로드합니다.

  4. /home/apexuser 디렉터리에서 파일의 압축을 풉니다.

    unzip apex_<version>.zip

    파일의 압축을 풀면 /home/apexuser 디렉터리에 apex 디렉터리가 있습니다.

  5. myapexhost.example.comapexuser로 여전히 로그인되어 있는 경우, Oracle의 APEX 리스터 파일을 /home/apexuser 디렉터리에 다운로드합니다.

  6. 새 디렉터리를 생성하고 APEX Listener 파일을 엽니다.

    Listener 유형 지침

    ORDS

    다음 코드를 실행합니다.

    mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS unzip ../ords.<version>.zip

    APEX Listener

    다음 코드를 실행합니다.

    mkdir /home/apexuser/apexlistener cd /home/apexuser/apexlistener unzip ../apex_listener.<version>.zip
  7. 이전 단계의 디렉터리에서 Listener 프로그램을 실행합니다.

    Listener 유형 지침

    ORDS

    다음 코드를 실행합니다.

    java -jar ords.war setup

    프로그램에서 다음 정보를 묻는 메시지를 표시합니다. 기본값은 괄호 안에 표시되어 있습니다.

    • 구성 데이터를 저장할 위치

      /home/apexuser/ORDS를 입력합니다.

    • 데이터베이스 서버의 이름[localhost]

      기본값을 선택하거나 알맞은 값을 입력합니다.

    • 데이터베이스 수신 대기 포트[1521]

      기본값을 선택하거나 알맞은 값을 입력합니다.

    • 데이터베이스 서비스 이름 또는 데이터베이스 SID[1]

      데이터베이스 서비스 이름을 지정하려면 1을, 데이터베이스 SID를 지정하려면 2를 선택합니다.

    • 데이터베이스 SID[xe]

      기본값을 선택하거나 알맞은 값을 입력합니다.

    • Oracle REST Data Services 스키마를 확인/설치 또는 이 단계 건너뛰기 [1]

      2을 선택합니다.

    • PL/SQL 게이트웨이 사용 또는 이 단계 건너뛰기 [1]

      기본값을 선택합니다.

    • PL/SQL 게이트웨이 데이터베이스 사용자 이름 [APEX_PUBLIC_USER]

      기본값을 선택합니다.

    • APEX_PUBLIC_USER의 데이터베이스 암호

      암호를 입력합니다.

    • Application Express RESTful Services 데이터베이스 사용자(APEX_LISTENER, APEX_REST_PUBLIC_USER)를 위한 암호 지정 또는 이 단계 건너뛰기 [1]

      APEX 4.1.1.V1의 경우 2를 선택하고 다른 모든 APEX 버전의 경우 1을 선택합니다.

    • [APEX 4.1.1.v1에는 필요하지 않음] APEX_LISTENER의 데이터베이스 암호

      (필요한 경우) 암호를 입력합니다.

    • [APEX 4.1.1.v1에는 필요하지 않음] APEX_REST_PUBLIC_USER의 데이터베이스 암호

      (필요한 경우) 암호를 입력합니다.

    APEX Listener

    다음 코드를 실행합니다.

    java -Dapex.home=./apex -Dapex.images=/home/apexuser/apex/images -Dapex.erase -jar ./apex.war

    프로그램에서 다음 정보를 묻는 메시지를 표시합니다.

    • APEX Listener 관리자 이름. 기본값은 adminlistener입니다.

    • APEX Listener 관리자의 암호

    • APEX Listener Manger의 사용자 이름입니다. 기본값은 managerlistener입니다.

    • APEX Listener 관리자의 암호

    다음과 같이 구성을 완료하는 데 필요한 URL이 인쇄됩니다:

    INFO: Please complete configuration at: http://localhost:8080/apex/listenerConfigure Database is not yet configured

    APEX Listener를 실행 중인 상태로 둡니다. Oracle Application Express를 사용하려면 Listener가 계속 실행되고 있어야 합니다. 이 구성 절차를 마치면 Listener를 백그라운드에서 실행할 수 있습니다.

    웹 브라우저에서 APEX Listener 프로그램에 제공된 URL로 이동합니다. Oracle Application Express Listener 관리 창이 나타납니다. 다음 정보를 입력합니다.

    • Username(사용자 이름)APEX_PUBLIC_USER

    • Password(암호)APEX_PUBLIC_USER에 대한 암호입니다. 앞에서 APEX 리포지토리를 구성할 때 지정한 암호입니다. 자세한 내용은 퍼블릭 사용자 계정 잠금 해제 단원을 참조하십시오.

    • Connection Type(연결 유형) – 기본

    • Hostname(호스트 이름) – Amazon RDS DB 인스턴스의 엔드포인트입니다(예: mydb.f9rbfa893tft.us-east-1.rds.amazonaws.com).

    • Port(포트) – 1521

    • SID – Amazon RDS DB 인스턴스에 있는 데이터베이스의 이름입니다(예: mydb).

    [Apply]를 선택합니다. APEX 관리 창이 나타납니다.

  8. APEX admin 사용자용 암호를 설정해야 합니다. 이를 위해 SQL*Plus를 사용하여 DB 인스턴스에 마스터 사용자로 연결하고 다음 명령을 실행합니다:

    EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to master; @/home/apexuser/apex/apxchpwd.sql

    master를 마스터 사용자 이름으로 바꿉니다. apxchpwd.sql 스크립트에서 메시지가 표시되면 새 admin 암호를 입력합니다.

  9. ORDS에서 APEX Listener를 시작합니다. 다음 코드를 실행합니다.

    java -jar ords.war

    APEX Listener를 처음으로 시작할 때 APEX 고정 리소스의 위치를 제공하라는 메시지가 나타납니다. 이 이미지 폴더는 APEX 설치 디렉터리의 /apex/images 디렉터리에 위치합니다.

  10. 브라우저에서 APEX 관리 창으로 돌아가서 [Administration]을 선택합니다. 그런 다음 [Application Express Internal Administration]을 선택합니다. AWS 자격 증명을 요구하는 메시지가 표시되면 다음 정보를 입력합니다.

    • User name(사용자 이름)admin

    • Password(암호)apxchpwd.sql 스크립트를 사용하여 설정한 암호

    [Login]을 선택한 다음 admin 사용자용 새 암호를 설정합니다.

이제 APEX Listener를 사용할 준비가 끝났습니다.

APEX 버전 업그레이드

중요

APEX를 업그레이드하기 전에 DB 인스턴스를 백업하십시오. 자세한 내용은 DB 스냅샷 생성업그레이드 테스트 단원을 참조하십시오.

DB 인스턴스와 함께 APEX를 업그레이드하려면 다음을 실행합니다.

  • 업그레이드된 DB 인스턴스 버전의 새 옵션 그룹을 생성합니다.

  • 업그레이드된 APEX 및 APEX-DEV 버전을 새 옵션 그룹에 추가합니다. DB 인스턴스가 사용하는 다른 옵션도 포함시켜야 합니다. 자세한 내용은 옵션 그룹 고려 사항 단원을 참조하십시오.

  • DB 인스턴스를 업그레이드할 때 업그레이드된 DB 인스턴스의 새 옵션 그룹을 지정합니다.

APEX 버전을 업그레이드한 후에도 이전 버전의 APEX 스키마가 데이터베이스에 남아 있을 수 있습니다. 더 이상 필요 없는 경우에는 업그레이드 후에 데이터베이스에서 기존 APEX 스키마를 제거할 수 있습니다.

APEX 버전을 업그레이드하고 이전 APEX 버전에서 RESTful 서비스가 구성되지 않은 경우 RESTful 서비스를 구성하는 것이 좋습니다. 자세한 내용은 Oracle APEX용 RESTful 서비스 구성 단원을 참조하십시오.

DB 인스턴스의 주요 버전 업그레이드를 실행하고 대상 데이터베이스 버전과 호환되지 않는 APEX 버전을 사용할 경우 DB 인스턴스를 업그레이드하기 전에 APEX 버전을 업그레이드할 수 있습니다. APEX를 먼저 업그레이드하면 DB 인스턴스를 업그레이드하는 시간을 줄일 수 있습니다.

참고

APEX 업그레이드 이후 업그레이드된 버전과 사용할 리스너를 설치 및 구성합니다. 지침은 APEX Listener 설치 및 구성을 참조하십시오.

APEX 옵션 제거

DB 인스턴스에서 Amazon RDS APEX 옵션을 제거할 수 있습니다. DB 인스턴스에서 APEX 옵션을 제거하려면 다음 중 하나를 수행합니다.

  • 여러 DB 인스턴스에서 APEX 옵션을 제거하려면 DB 인스턴스가 속한 옵션 그룹에서 해당 APEX 옵션을 제거합니다. 이 변경은 해당 옵션 그룹을 사용하는 모든 DB 인스턴스에 영향을 미칩니다. 여러 DB 인스턴스에 연결된 옵션 그룹에서 APEX 옵션을 제거하면 모든 DB 인스턴스가 다시 시작되는 동안 인스턴스가 잠시 중단됩니다.

    자세한 내용은 옵션을 옵션 그룹에서 제거하기 단원을 참조하십시오.

  • 단일 DB 인스턴스에서 APEX 옵션을 제거하려면 DB 인스턴스를 수정하고 APEX 옵션이 포함되지 않은 다른 옵션 그룹을 지정합니다. 기본(빈) 옵션 그룹을 지정하거나 다른 사용자 지정 옵션 그룹을 지정할 수 있습니다. APEX 옵션을 제거하는 경우 DB 인스턴스를 자동으로 다시 시작하는 동안 인스턴스가 잠시 중단됩니다.

    자세한 내용은 Oracle 데이터베이스 엔진 기반 DB 인스턴스의 변경 단원을 참조하십시오.

DB 인스턴스에서 APEX 옵션을 제거하면 데이터베이스에서 APEX 스키마가 제거됩니다.