Oracle Database 구성

Maximo® Manage와 함께 사용하도록 Oracle Database 를 구성하려면 테이블스페이스를 작성하고 데이터베이스 사용자를 작성하며 데이터베이스 설정을 구성합니다.

시작하기 전에

Oracle Database설치 및 배치에 대한 정보는 Oracle Database 제품 문서를 검토하십시오.

지원되는 데이터베이스 버전에 대한 정보를 보려면 소프트웨어 제품 호환성 보고서를 생성하십시오. 자세한 정보는 소프트웨어 제품 호환성 보고서를 참조하십시오. IBM® Maximo Application Suite 를 검색하고 스위트 버전을 선택하여 보고서를 생성하십시오. 보고서의 지원되는 소프트웨어 탭에서 지원되는 데이터베이스 버전을 확인하십시오.

다음 운영 체제를 사용하여 데이터베이스를 구성하십시오.
  • Linux® 또는 UNIX
  • Microsoft Windows

시스템 성능에 대한 자세한 정보는 시스템 성능에 대한 우수 사례를 참조하십시오.

프로시저

  1. Oracle 소프트웨어 사용자로 로그인하십시오. 일반적으로 이 사용자의 이름은 oracle입니다.
  2. 데이터베이스에 연결하기 위한 요청을 관리하기 위해 데이터베이스 리스너를 작성하십시오.
  3. Maximo Manage에서 사용할 데이터베이스를 작성하십시오.
    데이터베이스 초기화 매개변수에 대해 다음 매개변수의 값을 변경하십시오.
    nls_length_semantics
    이 값을 CHAR로 변경하십시오.
    open_cursors
    이 값을 1000으로 변경하십시오.
    cursor_sharing
    이 값을 FORCE로 설정하십시오.
    주: 데이터베이스 문자 설정이 Oracle Database에 필요한 AL32UTF8 문자 세트로 설정되어 있는지 확인하십시오.
  4. SQL*Plus에서 다음 명령을 실행하여 테이블스페이스를 작성하십시오. 디렉토리를 데이터베이스 위치에 대한 경로로 교체하십시오.
    Create tablespace maxdata datafile 
    'C:\oracle\product\12.1.0.1\db_1\dbs\maxdata.dbf' 
    size 1000M autoextend on;

    색인을 위한 테이블스페이스를 작성하려면 명령을 반복하고 유사한 구문을 사용하십시오.

  5. 다음 명령을 실행하여 임시 테이블스페이스를 작성하십시오. 디렉토리를 데이터베이스 위치에 대한 경로로 교체하십시오.
    create temporary tablespace maxtemp tempfile  
    'C:\oracle\product\12.1.0.1\db_1\dbs\maxtemp.dbf'
    size 1000M autoextend on maxsize unlimited;
  6. Maximo 사용자를 작성하고 권한을 부여하려면 다음 명령을 실행하십시오.
    create user maximo identified by maximo default tablespace maxdata temporary 
    tablespace maxtemp;
    grant connect to maximo;
    grant create job to maximo;
    grant create trigger to maximo;
    grant create session to maximo;
    grant create sequence to maximo;
    grant create synonym to maximo;
    grant create table to maximo;
    grant create view to maximo;
    grant create procedure to maximo;
    grant alter session to maximo;
    grant execute on ctxsys.ctx_ddl to maximo;
    alter user maximo quota unlimited on maxdata;

    색인화를 위해 별도의 테이블스페이스를 작성한 경우, maximo 사용자에게 해당 색인 테이블스페이스에 대한 액세스 권한도 부여해야 합니다.

    예를 들어 TSI_MAM_OWN이라는 인덱싱을 위한 별도의 테이블스페이스를 작성한 경우 다음 명령을 실행하십시오.
    alter user maximo quota unlimited on TSI_MAM_OWN
  7. MAXIMO_STORAGE 라는 Oracle 환경 설정을 임의로 작성하고 Oracle 텍스트 인덱스를 전용 테이블스페이스에 저장하십시오.
    • MAXINDX 테이블 스페이스에 내재된 인덱스를 저장하십시오.
    • MAXDATA 테이블스페이스에 암시적 테이블을 저장합니다.
    • LOB 테이블 스페이스에 내재적 LOB 테이블을 저장하십시오.
    예를 들어, 다음 환경 설정 정의를 실행하여 텍스트 인덱스의 내재적 오브젝트를 세 개의 테이블스페이스 (MAXDATA, MAXINDX및 MAXLOBS) 로 분할하십시오.
    begin
    ctx_ddl.create_preference('MAXIMO_STORAGE', 'BASIC_STORAGE');
    ctx_ddl.set_attribute('MAXIMO_STORAGE', 'I_TABLE_CLAUSE',
    'tablespace MAXDATA LOB(token_info) store as (tablespace MAXLOBS
    enable storage in row)');
    ctx_ddl.set_attribute('MAXIMO_STORAGE', 'I_INDEX_CLAUSE',
    'tablespace MAXINDX compress 2');
    ctx_ddl.set_attribute('MAXIMO_STORAGE', 'K_TABLE_CLAUSE',
    'tablespace MAXINDX');
    ctx_ddl.set_attribute('MAXIMO_STORAGE', 'R_TABLE_CLAUSE',
    'tablespace MAXDATA LOB(data) store as (tablespace MAXLOBS
    cache)');
    ctx_ddl.set_attribute('MAXIMO_STORAGE', 'N_TABLE_CLAUSE',
    'tablespace MAXINDX');
    end;

    Oracle 텍스트 인덱스를 작성하려면 다음 예제에 표시된 대로 환경 설정 정의를 CREATE INDEX 절에 지정해야 합니다.

    create  index pm_ndx6 on pm (description) indextype is
    ctxsys.context parameters ('lexer global_lexer language column
    LANGCODE storage MAXIMO_STORAGE');
  8. Oracle 텍스트 환경 설정 및 서브렉서 정의를 설정하십시오.
    1. SQL 조회 도구를 사용하여 스키마 소유자인 maximo 사용자로 데이터베이스에 로그온하고 다음 호출 세트를 실행하십시오.
      call ctx_ddl.drop_preference('global_lexer');
      call ctx_ddl.drop_preference('default_lexer');
      call ctx_ddl.drop_preference('english_lexer');
      call ctx_ddl.drop_preference('chinese_lexer');
      call ctx_ddl.drop_preference('japanese_lexer');
      call ctx_ddl.drop_preference('korean_lexer');
      call ctx_ddl.drop_preference('german_lexer');
      call ctx_ddl.drop_preference('dutch_lexer');
      call ctx_ddl.drop_preference('swedish_lexer');
      call ctx_ddl.drop_preference('french_lexer');
      call ctx_ddl.drop_preference('italian_lexer');
      call ctx_ddl.drop_preference('spanish_lexer');
      call ctx_ddl.drop_preference('portu_lexer');
      call ctx_ddl.create_preference('default_lexer','basic_lexer');
      call ctx_ddl.create_preference('english_lexer','basic_lexer');
      call ctx_ddl.create_preference('chinese_lexer','chinese_lexer');
      call ctx_ddl.create_preference('japanese_lexer','japanese_lexer');
      call ctx_ddl.create_preference('korean_lexer','korean_morph_lexer');
      call ctx_ddl.create_preference('german_lexer','basic_lexer');
      call ctx_ddl.create_preference('dutch_lexer','basic_lexer');
      call ctx_ddl.create_preference('swedish_lexer','basic_lexer');
      call ctx_ddl.create_preference('french_lexer','basic_lexer');
      call ctx_ddl.create_preference('italian_lexer','basic_lexer');
      call ctx_ddl.create_preference('spanish_lexer','basic_lexer');
      call ctx_ddl.create_preference('portu_lexer','basic_lexer');
      call ctx_ddl.create_preference('global_lexer', 'multi_lexer');
      call ctx_ddl.add_sub_lexer('global_lexer','default','default_lexer');
      call ctx_ddl.add_sub_lexer('global_lexer','english','english_lexer','en');
      call ctx_ddl.add_sub_lexer('global_lexer','simplified chinese','chinese_lexer','zh');
      call ctx_ddl.add_sub_lexer('global_lexer','japanese','japanese_lexer',null);
      call ctx_ddl.add_sub_lexer('global_lexer','korean','korean_lexer',null);
      call ctx_ddl.add_sub_lexer('global_lexer','german','german_lexer','de');
      call ctx_ddl.add_sub_lexer('global_lexer','dutch','dutch_lexer',null);
      call ctx_ddl.add_sub_lexer('global_lexer','swedish','swedish_lexer','sv');
      call ctx_ddl.add_sub_lexer('global_lexer','french','french_lexer','fr');
      call ctx_ddl.add_sub_lexer('global_lexer','italian','italian_lexer','it');
      call ctx_ddl.add_sub_lexer('global_lexer','spanish','spanish_lexer','es');
      call ctx_ddl.add_sub_lexer('global_lexer','portuguese','portu_lexer',null);
      
      
      commit;

다음에 수행할 사항

데이터베이스에 대해 다음과 같은 정보를 수집하십시오.
  • 호스트 및 호스트 이름.
  • 포트.
  • 데이터베이스 이름.
  • 데이터베이스 사용자의 사용자 이름 및 비밀번호. 이러한 값은 데이터베이스 구성 중에 작성됩니다.
  • 테이블스페이스, 인덱스 공간 및 스키마 값. 이러한 값은 데이터베이스 구성 중에 작성됩니다.
데이터베이스에 연결하는 데 사용되는 사용자 ID에 할당된 기본 역할 세트를 수정한 경우 Maximo 사용자에게 역할 세트를 명시적으로 부여해야 합니다. 사용자 ID에 부여된 기본 권한을 제한한 경우 Maximo 사용자에게 역할 세트도 명시적으로 부여해야 합니다. 예를 들어, select_catalog_role 역할과 같은 역할을 부여하지 않으면 Maximo 사용자에게 명시적으로 해당 역할을 부여해야 합니다.다음 SQL* Plus 명령을 실행하여 할당을 지정을 수행하십시오.
grant select_catalog_role to maximo