c oracle 快速读取 数据库表,Oracle database 19c中获取当前数据库版本的方法

1、通过sqlplus命令行方式

sqlplus 命令行工具能以最直接的方式获取数据库版本信息

[oracle@db19do01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Sun Jan 10 20:10:35 2021

Version 19.3.0.0.0

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

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

SQL>

2、查询v$version视图

这个视图提供了数据库的标志,并根据数据库版本提供了一些关于核心数据库组件的附加信息,可以在数据库处于NOMOUNT状态时使用。

从18c开始,添加了列BANNER_FULL,并包含多行字符串,其中还包括发布更新版本号。

SQL> select BANNER from v$version;

BANNER

-------------------------------------------------------------------------------

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

SQL>

SQL> SELECT banner_full FROM v$version;

BANNER_FULL

-------------------------------------------------------------------------------

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

SQL>

nomount

SQL> startup nomount

ORACLE instance started.

Total System Global Area 1157627896 bytes

Fixed Size                  9134072 bytes

Variable Size             503316480 bytes

Database Buffers          637534208 bytes

Redo Buffers                7643136 bytes

SQL> select open_mode from v$database;

select open_mode from v$database                      *

ERROR at line 1:

ORA-01507: database not mounted

SQL> show pdbs

SQL> SELECT version, version_legacy, version_full FROM v$instance;

VERSION              VERSION_LEGACY    VERSION_FULL

-------------------- ----------------- --------------------

19.0.0.0.0           19.0.0.0.0        19.3.0.0.0

SQL> SELECT banner_full FROM v$version;

BANNER_FULL

--------------------------------------------------------------------------------

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

SQL>

3、

查询

207b39a3526c186c59490d4ff9691a87.png

从18c开始,

VERSION_FULL

显示包含已安装版本更新的版本。

SELECT version, version_full FROM product_component_version;

SQL> col version for a20

SQL> col version_full for a20

SQL> SELECT version, version_full FROM product_component_version;

VERSION              VERSION_FULL

-------------------- --------------------

19.0.0.0.0           19.3.0.0.0

4、查询v$instance视图

SQL> desc v$instance

Name                                      Null?    Type

----------------------------------------- -------- ----------------------------

INSTANCE_NUMBER                                    NUMBER

INSTANCE_NAME                                      VARCHAR2(16)

HOST_NAME                                          VARCHAR2(64)

VERSION                                            VARCHAR2(17)

VERSION_LEGACY                                     VARCHAR2(17)

VERSION_FULL                                       VARCHAR2(17)

STARTUP_TIME                                       DATE

STATUS                                             VARCHAR2(12)

PARALLEL                                           VARCHAR2(3)

THREAD#                                            NUMBER

ARCHIVER                                           VARCHAR2(7)

LOG_SWITCH_WAIT                                    VARCHAR2(15)

LOGINS                                             VARCHAR2(10)

SHUTDOWN_PENDING                                   VARCHAR2(3)

DATABASE_STATUS                                    VARCHAR2(17)

INSTANCE_ROLE                                      VARCHAR2(18)

ACTIVE_STATE                                       VARCHAR2(9)

BLOCKED                                            VARCHAR2(3)

CON_ID                                             NUMBER

INSTANCE_MODE                                      VARCHAR2(11)

EDITION                                            VARCHAR2(7)

FAMILY                                             VARCHAR2(80)

DATABASE_TYPE                                      VARCHAR2(15)

SQL> SELECT version, version_legacy, version_full FROM v$instance;

VERSION              VERSION_LEGACY    VERSION_FULL

-------------------- ----------------- --------------------

19.0.0.0.0                 19.0.0.0.0        19.3.0.0.0

SQL>

nomount状态下:

SQL> shu immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup nomount

ORACLE instance started.

Total System Global Area 1157627896 bytes

Fixed Size                  9134072 bytes

Variable Size             503316480 bytes

Database Buffers          637534208 bytes

Redo Buffers                7643136 bytes

SQL> select open_mode from v$database;

select open_mode from v$database                      *

ERROR at line 1:

ORA-01507: database not mounted

SQL> show pdbs

SQL> SELECT version, version_legacy, version_full FROM v$instance;

VERSION              VERSION_LEGACY    VERSION_FULL

-------------------- ----------------- --------------------

19.0.0.0.0           19.0.0.0.0        19.3.0.0.0

SQL>

5、查询dba_registry和cdb_registry

SQL> SELECT version, version_full FROM dba_registry

WHERE comp_id = 'CATALOG';

VERSION              VERSION_FULL

-------------------- --------------------

19.0.0.0.0           19.3.0.0.0

SQL>  SELECT version, version_full,CON_ID FROM cdb_registry

2  WHERE comp_id = 'CATALOG';

VERSION              VERSION_FULL             CON_ID

-------------------- -------------------- ----------

19.0.0.0.0           19.3.0.0.0                    1

19.0.0.0.0           19.3.0.0.0                    3

SQL> show pdbs

CON_ID CON_NAME                       OPEN MODE  RESTRICTED

---------- ------------------------------ ---------- ----------

2 PDB$SEED                       READ ONLY  NO

3 XFPDB                          READ WRITE NO

SQL>

6、通过

调用PL/SQL

方法

这个包没有过程或函数,但是提供了获取版本和发布号的常量。常量只能在

PL/SQL

块中使用。用这个包是不可能得到补丁集或发布更新版本号。

SQL> SET SERVEROUTPUT ON

SQL> EXEC DBMS_OUTPUT.PUT_LINE(DBMS_DB_VERSION.VERSION || '.' || DBMS_DB_VERSION.RELEASE);

19.0

PL/SQL procedure successfully completed.

SQL>

6.2 DBMS_UTILITY

PL/SQL

块过程中,

DB_VERSION

可以用于提取当前数据库版本和当前设置的兼容版本。

SQL> SET SERVEROUTPUT ON

SQL> DECLARE

v_version          VARCHAR2(50);

v_compatibility    VARCHAR2(50);

BEGIN

DBMS_UTILITY.DB_VERSION (

version => v_version,

compatibility => v_compatibility

);

DBMS_OUTPUT.PUT_LINE('Version:       ' || v_version);

DBMS_OUTPUT.PUT_LINE('Compatibility: ' || v_compatibility);

END;

/  2    3    4    5    6    7    8    9   10   11   12   13

Version:       19.0.0.0.0

Compatibility: 19.0.0

PL/SQL procedure successfully completed.

SQL>

-the end-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值