Oracle 資料庫管理指令碼 命名規範

2021-05-28 12:42:24 字數 2900 閱讀 8376

oracle 中的資料字典是資料庫中的非常重要的一部分,提供了相關資料庫的資訊,它是所有 

oracle 

使用者(從應用的終端使用者、應用的設計開發者到資料庫管理員)的非常重要的資訊**。資料字典的建立,是在 

oracle 

資料庫建立完畢後,執行一些相關的資料庫管理指令碼來完成的。當採用 

oracle 

統一安裝器( 

oracle universal installer 

)建立資料庫時, 

oracle 

伺服器有關的字典檢視和指令碼最後會被自動安裝。但當需要公升級目前的 

oracle 

資料庫伺服器時,資料庫管理員必須要手工重新執行建立這些檢視或指令碼的 

sql 。

安裝完資料庫後, 

oracle 

資料庫管理指令碼就存放在作業系統中。對於 

unix 

和 nt 

作業系統,分別位於不同的物理目錄下,見表 

1 所示:

作業系統

指令碼目錄位置

unix

$oracle_home/rdbms/admin nt

%oracle_home%/rdbms/admin

表 1 

資料庫管理指令碼在作業系統中的物理位置

oracle 中幾乎所有的系統管理指令碼都儲存在該檔案目錄下,該目錄下含有上百個不同檔案。這些不同的檔案都有什麼作用呢?本文將詳細討論組成 

oracle 

資料庫管理指令碼的命名規範。這樣使用者看到某個檔案大概就可以知道該檔案主要用途是什麼。該目錄下的檔案按照功能不同可分為 

4 大類, 

oracle 

為了容易區分這幾類不同的檔案,對於檔案的命名遵從一定的規則。見表 

2 所示。

命名規則

功能描述

cat*.sql

關於目錄和資料字典資訊

dbms*.sql

資料庫中關於包的說明

prvt*.plb

加密過的包**

utl*.sql

資料庫其他功能的表和檢視

表 2 

資料庫管理指令碼命名規範

下面來詳細介紹這四種不同型別的指令碼功能:

1 、 cat*.sql 指令碼

該類指令碼主要用於建立資料字典檢視。其中,指令碼 catalog.sql 

和 catproc.sql 

是建立資料庫後必須要執行的兩個指令碼。這兩個指令碼的功能說明見表 

3 所示。 指令碼

指令碼說明

catalog.sql

建立系統常用的資料字典檢視和同義詞

catproc.sql

執行伺服器端所需要的 pl/sql 指令碼

表 3 

建立資料字典檢視指令碼說明

(1) catalog.sql

該指令碼建立相對於系統基表的檢視和系統動態效能檢視以及他們的同義詞。該指令碼又同時執行建立其他物件的指令碼,主要有:

基本 pl/sql 

環境,包括 

pl/sql 

的宣告:

- 資料型別

- 預定義例外

- 內建的過程和函式

•  sql 操作等。 審計

匯入 / 匯出

sql*loader

安裝選項

v$檢視 是由catalog.sql 指令碼建立的..

所以公升級系統後要執行這個指令碼..

( 2 ) catproc.sql

該指令碼主要用於建立 pl/sql 

功能的使用環境。此外,還建立幾個 

pl/sql 

包用於擴充套件 

rdbms 

功能。該指令碼同時還為下面的一些 

rdbms 

功能建立另外的一些包和檢視:

警告( alerts )

管道( pipes )

日誌分析( logminer )

大物件( large objects )

物件( objects )

高階佇列( advanced queuing )

複製選項( replication option )

其他的一些內建包和選項( other built-ins and options )

( 3 )其他指令碼

在該目錄下還有其他一些指令碼用來擴充套件 oracle 

資料庫伺服器功能。如, 

catadt.sql 

指令碼用來建立 

rdbms 

中用來顯示兆資料資訊的資料字典檢視。 

catnoadt.sql 

指令碼用來刪除這些表和檢視。

2、dbms*.sql 和 prvt*.plb 指令碼

這兩類指令碼用來建立擴充套件 oracle 

伺服器功能的系統預定義的一些 

oracle 

包的物件。這些程式均用來完成資料庫管理任務。大多數的 

sql 

指令碼在執行 

catproc.sql 

指令碼時被執行。一些額外的指令碼必須由資料庫管理員另外單獨執行。例如, 

dbmspool.sql 

指令碼,用來顯示在共享池中物件的大小並且為了減少共享池碎塊可以將其在 

sga 

中標記為保持或可刪除。

3、utl*.sql 指令碼

該類指令碼只有在資料庫需要另外的檢視和表時才需要執行。例如,指令碼 utlxplan.sql 

,用來建立乙個表,該錶用於觀察 

sql 

語句的執行計畫 

(execution plan) 。

需要注意的是,絕大多數資料庫管理指令碼都必須在使用者 sys 

下執行。資料庫管理員如果打算執行這些指令碼,最好首先閱讀指令碼內容中的相關資訊,了解應該以什麼使用者來執行這些指令碼

Oracle 資料庫管理指令碼 命名規範

oracle中的資料字典是資料庫中的非常重要的一部分,提供了相關資料庫的資訊,它是所有oracle使用者 從應用的終端使用者 應用的設計開發者到資料庫管理員 的非常重要的資訊 資料字典的建立,是在oracle資料庫建立完畢後,執行一些相關的資料庫管理指令碼來完成的。當採用oracle統一安裝器 or...

Oracle 資料庫管理指令碼 命名規範

oracle中的資料字典是資料庫中的非常重要的一部分,提供了相關資料庫的資訊,它是所有oracle使用者 從應用的終端使用者 應用的設計開發者到資料庫管理員 的非常重要的資訊 資料字典的建立,是在oracle資料庫建立完畢後,執行一些相關的資料庫管理指令碼來完成的。當採用oracle統一安裝器 or...

Oracle資料庫管理指令碼命名規範

轉 oracle 資料庫管理指令碼 命名規範 oracle 中的資料字典是資料庫中的非常重要的一部分,提供了相關資料庫的資訊,它是所有 oracle 使用者 從應用的終端使用者 應用的設計開發者到資料庫管理員 的非常重要的資訊 資料字典的建立,是在 oracle 資料庫建立完畢後,執行一些相關的資料...