Oracleベース・ホームについて

ユーザー固有のファイル、インスタンス固有のファイルおよびログ・ファイルは、読取り専用のORACLE_HOMEと読取り/書込みのORACLE_HOMEの両方でORACLE_BASE_HOMEと呼ばれる場所に存在します。

読取り/書込みのORACLE_HOMEでは、ORACLE_BASE_HOMEパスはORACLE_HOMEディレクトリと同じです。ただし、読取り専用のORACLE_HOMEでは、ORACLE_BASE_HOMEディレクトリはORACLE_HOMEと同じ場所になく、ORACLE_BASE/homes/HOME_NAMEに存在します。ここで、HOME_NAMEは、ORACLE_HOMEの内部名です。

たとえば、ネットワーク・ディレクトリnetwork/adminnetwork/traceおよびnetwork/logはORACLE_BASE_HOMEディレクトリにあります。読取り/書込みのORACLE_HOMEでは、ORACLE_BASE_HOMEがORACLE_HOMEと同じ場所にあるためネットワーク・ディレクトリがORACLE_HOME内にあるのに対し、読取り専用のORACLE_HOMEでは、ネットワーク・ディレクトリはORACLE_BASE/homes/HOME_NAMEにあります。

ORACLE_BASE_HOMEパスを出力するには、$ORACLE_HOME/binディレクトリからorabasehomeコマンドを実行します。
$ setenv ORACLE_HOME /u01/app/oracle/product/23.0.0/dbhome_1
$ cd $ORACLE_HOME/bin
$ ./orabasehome

orabasehomeコマンドでは、ホームが読取り専用ORACLE_HOMEであるか読取り/書込みORACLE_HOMEであるかに関係なく、ORACLE_BASE_HOMEの場所が返されます。

たとえば、sqlnet.oratnsnames.oralistener.oraなどのネットワーク・ファイルの場所を知るには、次のようにorabasehomeを実行します。

例12-1 読取り専用ORACLE_HOMEでの出力

$ ./orabasehome
/u01/app/oracle/homes/OraDB23Home1

ここでは、/u01/app/oracleはORACLE_BASEであり、OraDB23Home1はHOME_NAMEです。

例12-2 読取り/書込みORACLE_HOMEでの出力

$ ./orabasehome
/u01/app/oracle/product/23.0.0/dbhome_1

ここでは、/u01/app/oracle/product/23.0.0/dbhome_1はORACLE_HOMEです。