ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Portal管理者ガイド
11g リリース1 (11.1.1)
B61385-06
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

G Oracle Portal 11gのテスト環境から本番環境への移動

この章では、中間層インスタンス、メタデータ・リポジトリがあるアイデンティティ管理および製品メタデータ・リポジトリを含むソース環境からターゲット環境にOracle Portal 11gを移動するプロセスを説明します。この手順は次の目的に使用できます。

G.1 概要

Oracle Portalおよびその構成を、その構成を維持しながら、ソース環境から別の(ターゲットの)場所に移動できます。この章では、「テスト」はソース環境を意味し、「本番」はターゲット環境を意味するものとします。このシナリオでは、Oracle Portal 11gをテスト環境にすでにインストール済で、これを本番環境にコピーする必要があると想定します。

この項では、テスト環境から本番環境に移動する手順について説明します。


注意:

この章では、Oracle Internet Directory (OID)のユーザーやグループおよびシングル・サインオン(SSO)を移行する手順については説明しません。


G.2 ソース環境の準備

ソースでは、Portalの構成のアーカイブが必要です。このアーカイブは、クローニングされたPortalインスタンスをターゲット環境に作成するために使用します。

G.2.1 前提条件

ソース環境を移動する前に、次の前提条件を満たしていることを確認します。

  • ソース(テスト)環境とターゲット(本番)環境が存在する必要があります。

  • ソース・システムとターゲット・システムでは、両方のマシンの製品バージョン、JDKバージョン、データベース・バージョンおよびシステム構成が同一である必要があります。


注意:

ターゲット環境は、ソース環境のミラー・イメージになります。ターゲットのPortalインスタンスは、ソースのPortalインスタンスと同じように動作します。たとえば、Oracle Universal Installerを使用して、ターゲット・インスタンスをアンインストールしたり、パッチを適用できます。また、後でソースとして使用して、別のターゲットに移動することもできます。


G.2.2 クローニング元のソース環境の準備

クローニング元のソース環境を準備するには、次の手順を実行します。

  1. 次のパスをPATH環境変数に追加します。また、T2P_JAVA_OPTIONSを使用して、Java一時ディレクトリを次のように設定します。

    export PATH=SOURCE_MW_HOME/oracle_common/bin:$JAVA_HOME:$PATH
    
    export T2P_JAVA_OPTIONS="-Djava.io.tmpdir=/refresh/temp"
    
  2. Middlewareホームに含まれるWebLogic ServerホームおよびOracleホームをコピーするcopyBinary.shスクリプトを実行して、Portal Fusion Middlewareホームをコピーします。copyBinary.shスクリプトはSOURCE_MW_HOME/oracle_common/binフォルダにあります。

    たとえば、/work/mwhome/のMiddlewareホームをクローニングするには、次のコマンドを使用します。

    copyBinary.sh -javaHome /work/mwhome/jrockit_160_29_D1.2.0-10 -archiveLoc /work/clone/mw_source_copy.jar -sourceMWHomeLoc /work/mwhome -invPtrLoc /oraInventory/oraInst.loc
    
  3. (Oracleベースではなく)OracleホームディレクトリのTARファイルを作成します。例:

    tar cvf /tmp/cloning_tool.tar SOURCE_MW_HOME/oracle_common/bin SOURCE_MW_HOME/oracle_common/jlib
    
  4. データベース・スキーマをターゲット環境にエクスポートするデータベース・ダンプ(.dmp)ファイルを作成します。例:

    SOURCE_DB_HOME/bin -> exp \'sys/welcome1@db9635 AS SYSDBA\' file=/work/clone/portal_exp.dmp grants=y
    statistics=none log=/work/clone/portal_exp.log owner=<Prefix>_PORTAL,<Prefix>_PORTAL_APP,<Prefix>_PORTAL_PUBLIC
    

    注意:

    同じタイプのスキーマが複数ある場合は、ソース・インスタンスで使用されている接頭辞に対応する接頭辞が付いたスキーマを使用します。ソース・インスタンスで使用されているスキーマ接頭辞は、ソース・インスタンスのWebLogic管理コンソールのPortalデータ・ソース構成ページにアクセスして取得できます。


G.3 テスト環境から本番環境への移動

ソース環境の構成のアーカイブを作成した後、そのアーカイブを使用して、Portalのクローンをターゲット環境に作成する必要があります。

G.3.1 ソース環境からのデータの移動の準備

ソース環境からデータを移動する前に、次のタスクを実行してください。

  1. ターゲット・マシンで、同じバージョンのOracle Database (ソース・マシンに適用されているのと同じパッチ・セットまたは修正を含む)をインストールして、ソース・マシンと同じスキーマ接頭辞を使用します。

  2. 次のファイルをソース・マシンからターゲット・マシンにコピーします。

    • cloning_tool.tar

    • mw_source_copy.jar

    • portal_exp.dmp

  3. 次のコマンドを使用して、cloning_tool.tarの内容をターゲット・マシンのルート・ディレクトリに抽出します。

    tar -xvf cloning_tool.tar
    

G.3.2 ターゲット環境へのデータの移動

データをターゲット環境に移動するには、次のステップを実行します。

  1. ターゲット・データベースの表領域が、ソースで使用されている表領域と一致することを確認します。

    1. 使用されている表領域をリストするには、<Prefix>_PORTALユーザーとしてSQL*Plusから次の問合せを実行します。

      SELECT DISTINCT TABLESPACE_NAME FROM DBA_SEGMENTS WHERE OWNER IN '<Prefix>_PORTAL','<Prefix>_PORTAL_APP','<Prefix>_PORTAL_PUBLIC') UNION SELECT DISTINCT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME IN ('<Prefix>_PORTAL','<Prefix>_PORTAL_APP','<Prefix>_PORTAL_PUBLIC');
      

      次の出力のようなレスポンスが表示されます。

      TABLESPACE_NAME
      ------------------------------
      <Prefix>_PORTAL
      <Prefix>_PORTAL_DOC
      <Prefix>_PORTAL_IDX
      <Prefix>_PORTAL_LOG
      
    2. 一時表領域をリストするには、次の問合せを実行します。

      SELECT DISTINCT TEMPORARY_TABLESPACE FROM DBA_USERS WHERE USERNAME IN ('<Prefix>_PORTAL','<Prefix>_PORTAL_APP','<Prefix>_PORTAL_PUBLIC');
      

      次の出力のようなレスポンスが表示されます。

      TEMPORARY_TABLESPACE
      ------------------------------
      IAS_TEMP
      
    3. ターゲット・マシンの*.*dbfファイルを確認します。これらのファイルをリストするには、次の問合せを実行します。

      select FILE_NAME, TABLESPACE_NAME, AUTOEXTENSIBLE, MAXBYTES, INCREMENT_BY from DBA_DATA_FILES where
      TABLESPACE_NAME in ('<Prefix>_PORTAL','<Prefix>_PORTAL_DOC','<Prefix>_PORTAL_IDX','<Prefix>_PORTAL_LOG','<Prefix>_IAS_TEMP');
      

      次の出力のようなレスポンスが表示されます。

      FILE_NAME       TABLESPACE_NAME     AUT        MAXBYTES INCREMENT_BY
      ---------------------------------------------------------------------------
                    /work/db9635/oradata/db9635/STG12LIN_portaldoc.dbf
      <Prefix>_PORTAL_DOC            YES 3.4359E+10          480
                    /work/db9635/oradata/db9635/STG12LIN_portalidx.dbf
      <Prefix>_PORTAL_IDX            YES 3.4359E+10          480
                    /work/db9635/oradata/db9635/STG12LIN_portallog.dbf
      <Prefix>_PORTAL_LOG            YES 3.4359E+10          480
                    /work/db9635/oradata/db9635/STG12LIN_portal.dbf
      <Prefix>_PORTAL                YES 3.4359E+10          480
      
  2. 'sysdba'としてターゲット・データベースにログインして、次のスキーマを指定します。

    SQL> DROP USER STG12LIN_<Prefix>_PORTAL cascade;
    SQL> DROP USER STG12LIN_<Prefix>_PORTAL_APP cascade;
    SQL> DROP USER STG12LIN_<Prefix>_PORTAL_PUBLIC cascade;
    
  3. TARGET_MW_HOME/oraInventoryフォルダにoraInst.locファイルを作成します。このファイルには、Oracleインベントリ・ディレクトリの場所を指定します。次の例に示すように、pasteBinary.shを実行します。

    ./pasteBinary.sh -javaHome /work/mwhome/jrockit_160_29_D1.2.0-10 -archiveLoc /work/clone_source/mw_source_copy.jar
    -targetMWHomeLoc /scratch/aime1/Demo -invPtrLoc   /scratch/aime1/oraInventory/oraInst.loc
    

    注意:

    oraInst.locファイルを作成する前に、-Djava.io.tmpdirフォルダが存在しないことを確認します。


  4. SQL*Plusを実行して、SYSDBA権限を持つSYSユーザーとしてターゲット・マシンのデータベースに接続し、TARGET_PORTAL_HOME/portal/admin/plsql/wwvディレクトリからwbisys.sqlスクリプトを実行して、<Prefix>_PORTALスキーマを再作成します。

    sqlplus SYS/password AS SYSDBA@db3823
    @wdbisys.sql <Prefix>_PORTAL <Prefix>_PORTAL <Prefix>_IAS_TEMP wdbisys.log password
    

    Oracleデータベースへの接続の詳細は、次の場所にあるOracle® Database 2日で開発者ガイドを参照してください。

    http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/tdddg_connecting.htm#TDDDG99998

  5. <Prefix>_PORTAL_PUBLICスキーマを作成します。

    TARGET_PORTAL_HOME/portal/admin/plsql/wwsディレクトリに移動して、SQL*PlusからSYSユーザーとして次のスクリプトを実行します。

    SQL> CONNECT SYS/password AS SYSDBA@db3823
    @cruser.sql <Prefix>_PORTAL password <Prefix>_PORTAL <Prefix>_IAS_TEMP '' <Prefix>_PORTAL_DOC password
    
  6. SQL*PlusからSYSユーザーとして<Prefix>_PORTAL_PUBLICのパスワードを変更します。

    ALTER USER <Prefix>_PORTAL_PUBLIC IDENTIFIED BY password;
    

    このコマンドにより、<Prefix>_PORTALスキーマが作成され、必要なすべての権限が付与されます。

  7. SQL*PlusからSYSユーザーとして、補助スキーマを作成します。

    create user <Prefix>_PORTAL_APP identified by password;
    SQL> GRANT CONNECT,RESOURCE TO <Prefix>_PORTAL_APP IDENTIFIED BY password;
    ALTER USER <Prefix>_PORTAL_APP default tablespace <Prefix>_PORTAL temporary tablespace <Prefix>_IAS_TEMP;
    

    エクスポートした各スキーマに対して、スキーマを作成する必要があります。必要に応じてALTER USERコマンドを使用して、ユーザー・プロパティを調整します。

  8. TARGET_DB_HOME/rdbms/adminディレクトリからSYSDBA権限でcatexp.sqlスクリプトを実行します。

    sqlplus SYS/password AS SYSDBA@db3823
    @catexp.sql
    
  9. ターゲット環境の製品メタデータ・リポジトリにスキーマをインポートします。

    1. インポート・ユーティリティを実行します

      インポート先のデータベース・バージョンが、エクスポート元のデータベースのバージョンと同じであることを確認してください。実際のインポートは、データベースのimpコマンドで次のように実行されます。

      TARGET_DB_HOME/bin/   imp \'sys/password@db3823 AS SYSDBA\'
      file=/scratch/aime1/Clone_source/portal_exp.dmp grants=y log=/scratch/aime1/Clone_source/portal_imp.log
      fromuser=<Prefix>_PORTAL,<Prefix>_PORTAL_APP,<Prefix>_PORTAL_PUBLIC touser=<Prefix>_PORTAL,<Prefix>_PORTAL_APP,<Prefix>_PORTAL_PUBLIC
      
    2. インポートされたスキーマのすべての無効なオブジェクトをコンパイルします。

      SQL*PlusからSYSユーザーとして、TARGET_DB_HOME/rdbms/adminディレクトリから、次のスクリプトを実行します。

      @utlrp.sql
      

      注意:

      無効なオブジェクトがすべて適切かつ確実にコンパイルされるように、オブジェクトの依存性を考慮して、utlrp.sqlスクリプトを複数回実行するのがベスト・プラクティスです。


    3. 次の問合せを<Prefix>_PORTALスキーマで実行して、<Prefix>_PORTAL_PUBLICより多くを返すかどうかを確認します。

      SELECT DISTINCT DB_USER FROM <Prefix>_PORTAL.WWSEC_PERSON$;
      
    4. 一時ログイン・トリガーをドロップします。

      @droptrig.sql <Prefix>_PORTAL
      
    5. 中間OracleAS Portal表を再作成および再索引付けします。

      SQL*Plusから<Prefix>_PORTALユーザーとして、TARGET_PORTAL_HOME/portal/admin/plsql/wwsディレクトリから、次のスクリプトを実行します。

      @inctxgrn.sql
      @ctxcrind.sql
      
    6. SQL*PlusからSYSユーザーとして次のコマンドを実行して、<Prefix>_PORTALユーザーにジョブを戻します。

      SQL> UPDATE dba_jobs set LOG_USER='<Prefix_PORTAL>', PRIV_USER='<Prefix_PORTAL>' where schema_user='<Prefix_PORTAL>';
      SQL> commit;
      
  10. ターゲットのMiddlewareホームから構成ウィザードにログインして、Portalを構成します。Oracle Portalの構成の詳細ステップは、Oracle Fusion Middleware Oracle Portal, Forms, Reports and Discovererインストレーション・ガイドの「Oracle Portal、Forms、ReportsおよびDiscovererの構成」を参照してください。

G.4 本番環境の検証

クローニング後に環境を検証するには、次のURLをブラウザで確認します。

コンポーネント URL

Oracle Portal

http://host:port/portal/pls/portal

管理サーバー・コンソール

http://host:port/console

Enterprise Manager

http://host:port/em