Получите версию Oracle с помощью CMD - PullRequest
0 голосов
/ 06 мая 2020

Есть ли какая-либо команда для поиска моей установленной oracle версии из командной строки windows. (как и java -версия ..)

Ответы [ 4 ]

0 голосов
/ 06 мая 2020

Этот код позволяет отображать только версию базы данных.

@echo off
set user_name=scott
set password=tiger
set net_service_name=edcu
set sql=select version from  PRODUCT_COMPONENT_VERSION where rownum=1;

(echo  conn %user_name%/%password%@%net_service_name% 
echo set heading off
echo %sql%
echo exit) |sqlplus -s  /nolog

Например, вывод

D:\upwork\stackoverflow\get_version_oracle>get_oracle_version.bat
11.2.0.3.0
0 голосов
/ 06 мая 2020

Вы можете использовать нижеприведенную версию базы данных, перейдя в каталог ORACLE_HOME

  $ORACLE_HOME\OPatch\opatch lsinventory | find "Oracle Database"
0 голосов
/ 06 мая 2020

Ну, это зависит от того, что у вас действительно есть.

Если вы установили Oracle на свой P C (например, мой 11gXE), вы можете попробовать sqlplus -v:

c:\Temp>sqlplus -v

SQL*Plus: Release 11.2.0.2.0 Production

11.2.0.2.0; это действительно так?

c:\Temp>sqlplus scott/tiger

SQL*Plus: Release 11.2.0.2.0 Production on Sri Svi 6 07:40:29 2020

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

SQL>

Да, это так. Я использую SQL* Plus 11.2.0.2.0, который подключает меня к базе данных 11.2.0.2.0.


Однако, если на моем P C не установлен Oracle но он находится где-то на сервере базы данных, и я получаю к нему доступ через сеть, тогда он не будет работать, потому что он будет отображать SQL* Plus (т.е. клиент, установленный на моем P C), а не база версия. Кроме того, у меня может быть установлено несколько клиентов, поэтому это зависит от того, какой исполняемый файл sqlplus я запускал.

Версия базы данных - в таком случае - не может быть получена только из командной строки операционной системы (по крайней мере, я не знаю, как это сделать). Вы можете получить его, подключившись к самой базе данных, например

Версия клиента:

M:\>sqlplus -v

SQL*Plus: Release 11.2.0.1.0 Production

Версия базы данных ORCL - 11.2.0.4.0

M:\>sqlplus scott/tiger@orcl

SQL*Plus: Release 11.2.0.1.0 Production on Sri Svi 6 08:12:27 2020

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

Версия базы данных ORCL2 - 10.2.0.5.0:

M:\>sqlplus scott/tiger@orcl2

SQL*Plus: Release 11.2.0.1.0 Production on Sri Svi 6 08:13:42 2020

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, Data Mining and Real Application Testing options

SQL>

Когда вы находитесь в SQL* Plus, запросите версию v $, например

SQL> select * From v$version where rownum = 1;

BANNER                                                                               CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production              0

SQL>

, что показывает, что я сейчас подключен к 12.2.0.1.0.

0 голосов
/ 06 мая 2020

Вам нужно найти каталог ORACLE_HOME, установить его как переменную среды, а затем запустить opatch:

set ORACLE_HOME=...
"ORACLE_HOME"\OPatch\opatch lspatches

Эта команда выводит список установленных исправлений с Oracle основной версией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...