Oracle Database の構成

Maximo® Manageで使用するために Oracle Database を構成するには、テーブル・スペースを作成し、データベース・ユーザーを作成し、データベース設定を構成します。

始める前に

Oracle Databaseのインストールとデプロイについては、 Oracle Database 製品資料を参照してください。

サポートされるデータベース・バージョンについては、Software Product Compatibility Report を生成してください。 詳しくは、 Software Product Compatibility Reportを参照してください。 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 に設定します。
    注: データベース文字設定が AL32UTF8 文字セット ( Oracle Databaseに必要) に設定されていることを確認してください。
  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 表を保管します。
    例えば、テキスト索引内の暗黙オブジェクトを 3 つの表スペース (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