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、 查詢
從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-
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28373936/viewspace-2748857/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 獲取當前會話資訊的方法會話
- 獲取當前修改的行記錄資料
- Javascript獲取當前時間戳的方法JavaScript時間戳
- 獲取當前會話資訊的方法(二)會話
- 獲取Oracle資料庫awr報告方法Oracle資料庫
- oracle 當前資料庫各種版本時間釋出表Oracle資料庫
- C# 獲取系統當前IE版本號C#
- 用命令檢視當前登入資料庫版本(3種方法)資料庫
- C# 獲取當前是星期幾的方法C#
- Oracle獲取資料庫中的物件建立語句Oracle資料庫物件
- Android中獲取當前位置資訊Android
- JavaScript 獲取當前月份JavaScript
- JavaScript 獲取當前域名JavaScript
- javascript獲取當前urlJavaScript
- PHP中獲取當前頁面的完整URLPHP
- JVM 如何獲取當前容器的資源限制?JVM
- php 獲取當前域名和當前協議PHP協議
- oracle資料庫獲取繫結變數的各種方法Oracle資料庫變數
- javascript獲取當前li元素在集合中的位置JavaScript
- $request 請求方法 獲取 API 的當前使用者API
- Java:如何輕鬆獲取當前執行的方法名Java
- mybatis獲取當前時間MyBatis
- Java獲取當前星期幾Java
- JQuery獲取當前元素本身jQuery
- java獲取當前時間Java
- Qt獲取當前時間QT
- js獲取當前時間JS
- Qt 獲取當前時間QT
- MVC中獲取當前URL、controller、actionMVCController
- java連線Oracle資料庫獲取資料JavaOracle資料庫
- Oracle Database 19c中的自動索引OracleDatabase索引
- 使用JS獲取當前地理位置方法彙總JS
- 小程式獲取當前元素在螢幕中的位置
- 獲取當前元素在兄弟元素節點中的索引索引
- JavaScript中獲取當前專案的絕對路徑JavaScript
- jQuery如何獲取當前元素的索引jQuery索引
- javascript獲取當前的時間戳JavaScript時間戳
- oracle獲取當前會話(程式)session id(sid)Oracle會話Session