Redhat 5.5のターミナルにいるので、インストールされているOracleのバージョンを確認する必要があります。私はLinuxにかなり慣れていませんが、しばらくの間Googleを検索しましたが、必要なものが見つかりません。ターミナルを介してインストールされているバージョンを特定する必要があります。 Oracleファイルを見つけましたが、バージョンが見つからないようです。
Oracle Databaseを実行しているユーザーは、$Oracle_HOME/OPatch/opatch lsinventory
インストールされている正確なバージョンとパッチを表示します。
たとえば、これはバージョン番号のみを返すクイックワンライナーです。
$Oracle_HOME/OPatch/opatch lsinventory | awk '/^Oracle Database/ {print $NF}'
Sqlplusに入力します(バージョン番号が表示されます)
# su - Oracle
Oracle# sqlplus
OR
echo $ORAHOME
Oracleがインストールされたパスを提供し、パスにはバージョン番号が含まれます。
OR
Oracle DBに接続して実行
select * from v$version where banner like 'Oracle%';
Sql * plusでsysユーザーとしてログインします。次に、次のクエリを実行します。
select * from v$version;
または
select * from product_component_version;
A.B.Cadaが指摘したように、dbバージョンのsqlplusでデータベース自体を照会できます。これは、アクティブに実行されているdbのバージョンを調べる最も簡単な方法です。複数ある場合は、Oracle_sidを適切に設定し、各インスタンスに対してクエリを実行する必要があります。
/ etc/oratabファイルを表示して、インスタンスごとにどのインスタンスおよびどのdbホームが使用されているかを確認できます。複数のインスタンスだけでなく、サーバーごとに複数のバージョンのOracleをインストールすることもできます。/etc/oratabファイルには、すべてのインスタンスとdbホームがリストされます。 Oracle dbホームから「opatch lsinventory」を実行して、インストールされている厳密なバージョンのdb、およびそのdbインストールに適用されているパッチを確認できます。
あなたも確認することができます
ps -ef |grep -i ora
起動スクリプト(私の場合は/ etc/init.d/Oracle-xe)を読むだけでこれを約1分で解決しました:
less /etc/init.d/Oracle-xe
私が見つけたファイルのほぼ最初に:
Oracle_HOME = [PATH_TO_INSTALLATION_INCLUDING_VERSION_NUMBER]
スクリプトの場所がわかっていて、サーバーの起動/再起動に使用されるため、これは私にとって最も迅速なソリューションでした。
もちろん、これは、バージョン番号が実際のサーバーバージョンに実際に対応していることを前提としています。これは、正しくインストールされたインスタンスの場合に必要です。
少し手動で検索しますが、別の方法です...
OracleホームまたはLinuxサーバー上のOracleのインストールファイルがインストールされている場所を見つけます。
cd / <-- Goto root directory
find . -print| grep -i dbm*.sql
Oracleのインストール方法によって結果は異なりますが、これは表示されます
/db/Oracle
フォルダーに移動
less /db/Oracle/db1/sqlplus/doc/README.htm
下にスクロールすると、このようなものが見えるはずです
SQL * Plusリリースノート-リリース11.2.0.2