20

我在 Redhat 5.5 的终端中,我需要找出安装了哪个版本的 Oracle。我是 Linux 的新手,但我已经在 Google 上搜索了一段时间,但找不到我需要的东西。我必须找到通过终端安装的版本。我找到了 Oracle 文件,但似乎找不到版本。

4

7 回答 7

16

输入sqlplus(你会看到版本号)

# su - oracle

oracle# sqlplus

或者

echo $ORAHOME

将为您提供安装 Oracle 的路径,路径将包括版本号。

或者

连接到 Oracle DB 并运行

select * from v$version where banner like 'oracle%';
于 2012-06-04T14:33:50.427 回答
11

作为运行 Oracle 数据库的用户,还可以尝试$ORACLE_HOME/OPatch/opatch lsinventory显示安装的确切版本和补丁。

例如,这是一个快速的 oneliner,它应该只返回版本号:

$ORACLE_HOME/OPatch/opatch lsinventory | awk '/^Oracle Database/ {print $NF}'
于 2014-05-26T22:43:05.753 回答
6

在 sql*plus 中以 sys 用户身份登录。然后执行以下查询:

select * from v$version; 

或者

select * from product_component_version;
于 2016-04-17T18:39:51.650 回答
3

正如 ABCada 指出的那样,您可以使用 sqlplus 查询数据库本身的 db 版本。这是找出正在运行的数据库版本的最简单方法。如果有多个实例,则必须适当设置 oracle_sid 并对每个实例运行查询。

您可以查看 /etc/oratab 文件以查看每个实例使用的实例和 db home。可以为每台服务器安装多个版本的 oracle 以及多个实例。/etc/oratab 文件将列出所有实例和 db home。从 oracle db home 中,您可以运行“opatch lsinventory”来找出安装的数据库的精确版本以及应用于该数据库安装的任何补丁。

于 2012-06-04T18:42:54.067 回答
2

我通过阅读启动脚本(在我的例子中是/etc/init.d/oracle-xe)在大约 1 分钟内解决了这个问题:

少 /etc/init.d/oracle-xe

在我发现的文件的几乎开头:

ORACLE_HOME= [PATH_TO_INSTALLATION_INCLUDING_VERSION_NUMBER]

这对我来说是最快的解决方案,因为我知道脚本的位置,并且它用于启动/重新启动服务器。

当然,这依赖于版本号实际上对应于实际的服务器版本,它应该用于正确安装的实例。

于 2014-11-25T08:31:16.440 回答
0

你也可以检查

ps -ef |grep -i ora
于 2015-02-23T17:09:28.740 回答
0

有点手动搜索,但它是另一种方法...
找到 Oracle 主目录或 Oracle 安装文件安装在您的 linux 服务器上的位置。

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

于 2017-03-16T08:08:21.970 回答