관계형 데이터베이스 서버 또는 포트 변경

백업/복원 프로세스의 일부로 새 Oracle 데이터베이스 인스턴스를 사용하여 Essbase를 재구성할 수 있습니다. 이 항목에서는 관계형 데이터베이스 서버 또는 포트를 변경하는 방법을 보여줍니다.

관계형 데이터베이스 서버 변경

  1. 현재 실행 중인 Essbase 인스턴스를 중지합니다.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./stop.sh
  2. 새 데이터베이스 <export_user_name> 사용자를 생성하고 'expdp' 명령을 실행하여 스키마 백업을 만듭니다. RCUPrefix_essbase 스키마만 익스포트합니다.

    예:

    alter session set container="containername";
    create user <export_user_name> identified by <password>;
    grant create session, create table to <export_user_name>;
    create or replace directory dmpdir to <export_user_name>;
    grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>;
    grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>;
    grant user <export_user_name> default tablespace users;
    alter user <export_user_name> quota unlimited on users;
    exit;
    expdp <export_user_name>/<password>@<pdbname> dumpfile=<RCUPrefix>.dmp logfile=<RCUPrefix>.log schema=<RCUPrefix>_ESSBASE directory=dmpdir
  3. 응용 프로그램 디렉토리의 백업을 만들려면 매우 권장됩니다. 이미 백업이 있거나 응용 프로그램 디렉토리에 많은 대형 응용 프로그램이 있는 경우 이 단계를 건너뛸 수 있습니다.

    예:

    cd user_projects/applications/essbase/
    tar -cvfz ~/Backup/Apps.tar.gz app/*
  4. 새 Oracle 데이터베이스에 대해 새 Essbase 인스턴스를 구성합니다. 다음 옵션을 사용하여 도메인 루트 및 응용 프로그램 디렉토리 경로를 입력할 수 있습니다.
    • 'user_projects'를 기본 인스턴스로 재사용하려는 경우 및 이전 인스턴스에서 이미 사용 중이므로 Configuration Tool을 실행하기 전에 이전 user_projects의 이름을 다른 이름으로 바꾸십시오.
    • 또는 새 구성의 도메인 루트 및 응용 프로그램 디렉토리 경로에 대해 새 'user_projects_XXX'를 입력합니다.

    주:

    새 인스턴스가 작동되어 실행될 때까지 아무 것도 제거하지 마십시오.
    예를 들어, (도메인 및 애플리케이션 위치를 선택하는 도메인 세부정보 구성 페이지에서):
    • 도메인 이름 essbase_domain
    • 도메인 루트Oracle/21.4.2/Middleware/Oracle_Home/user_projects/domains
    • 애플리케이션 디렉토리 /Middleware/Oracle_Home/user_projects/applications/essbase
    • WebLogic 관리자 계정

      ...

  5. 새 Oracle 데이터베이스에 대해 새 Essbase 인스턴스 구성을 완료합니다. 새 스키마 이름을 사용해야 합니다.
  6. 도구 구성이 완료된 후 Essbase를 다시 중지합니다(단계 #1 참조).
  7. 새 Oracle 데이터베이스에 대해 유사한 'expuser' 사용자를 생성하고 'impdp' 명령을 실행하여 #3단계의 백업에서 가져온 덤프 파일에서 데이터를 복원합니다. 새 스키마에 새 이름이 있는 경우 재매핑 옵션으로만 RCUPrefix_essbase 스키마를 임포트합니다.

    예:

    alter session set container="containername";
    create user <export_user_name> identified by <password>;
    grant create session , create table to <export_user_name>;
    create or replace directory dmpdir to <export_user_name>;
    grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>;
    grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>;
    grant user <export_user_name> default tablespace users;
    alter user <export_user_name> quota unlimited on users;
    exit;
    impdp expuser/<password>@<pdbname>  dumpfile=<schema_name>.dmp logfile=<schema_name>.log REMAP_SCHEMA=[OLD_SCHEMA]_ESSBASE:[NEW_SCHEMA]_ESSBASE directory=dmpdir partition_options=merge table_exists_action=replace  
  8. 백업에서 애플리케이션 디렉토리를 복원하거나 이전 인스턴스에서 이동합니다.
    cd user_projects/applications/essbase/
    tar xvf ~/Backup/Apps.tar
  9. 새 인스턴스에 대해 Essbase를 시작하고 모든 항목이 성공적으로 실행 중인지 확인합니다. 아무것도 삭제하지 않았으므로 필요한 경우 항상 이전 좋은 인스턴스로 돌아갈 수 있습니다. 일단 모든 것이 작동하면 앞으로 가서 필요하지 않은 것을 정리 할 수 있습니다.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./start.sh
  10. WebLogic의 이전 관리 서버의 모든 설정은 새 구성이 완료되면 새로 생성된 관리 서버에 수동으로 추가해야 합니다.

데이터베이스 서버 포트만 변경

  1. Essbase 서버를 중지합니다.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin./stop.sh
  2. 데이터베이스 서버의 tnsnames.ora 및 listener.ora 파일에 있는 데이터베이스 포트를 필요한 포트(예: 1524)로 변경합니다.
  3. 리스너를 재시작하고 데이터베이스를 재시작합니다. SQL 개발자의 연결을 확인합니다.
  4. Essbase 서버의 다음 위치에서 다음을 수행합니다.
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/fmwconfig
    jps-config.xml에서 이 속성의 새 포트로 포트를 변경합니다.
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/>
    jps-config-jse.xml에서 데이터베이스 포트를 참조하는 속성과 유사한 변경 작업을 수행합니다.
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/>
  5. 다음 위치에서 다음을 수행합니다.
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/jdbc
    다음 파일의 새 포트 번호로 데이터베이스 포트를 변경합니다.

    에세베이스_데이터 소스-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    로컬SvcTblDataSource-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    opss-audit-jdbc-xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    opss - 감사 뷰 - jdbc.xml

     <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    opss-데이터 소스-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    WLSSchema데이터 소스-jdbc.xml

     <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>
  6. 다음 위치에서 다음을 수행합니다.
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/init-info
    다음 파일에서 데이터베이스 포트를 새 포트 번호로 변경합니다.

    startup-plan-unsub.xml:

     <jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>

    startup-plan.xml:

    <jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>
  7. Essbase를 재시작합니다.
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./start.sh