我們大家都清楚Oracle裡的數據字典是Oracle數據庫中的十分重要的組成部分,它提供了一些相關的數據庫信息,它是絕大部分的Oracle用戶(從應用的最終用戶、應用的設計開發者到數據庫管理員)的十分重要的信息來源。
當采用Oracle統一安裝器(Oracle Universal Installer)創建數據庫時,Oracle服務器有關的字典視圖和腳本最後會被自動安裝。但當需要升級目前的Oracle數據庫服務器時,數據庫管理員必須要手工重新運行創建這些視圖或腳本的SQL。安裝完數據庫後,Oracle數據庫管理腳本就存放在操作系統中。對於UNIX和NT操作系統,分別位於不同的物理目錄下。
操作系統 腳本目錄位置
- UNIX $Oracle_HOME/rdbms/admin
- NT %Oracle_HOME%\rdbms\admin
Oracle中幾乎所有的系統管理腳本都保存在該文件目錄下,該目錄下含有上百個不同文件。這些不同的文件都有什麼作用呢?本文將詳細討論組成Oracle管理腳本的命名規范。這樣用戶看到某個文件大概就可以知道該文件主要用途是什麼。該目錄下的文件按照功能不同可分為4大類,Oracle為了容易區分這幾類不同的文件,對於文件的命名遵從一定的規則。見表2所示。
命名規則 功能描述
cat*.sql 關於目錄和數據字典信息
dbms*.sql 數據庫中關於包的說明
prvt*.plb 加密過的包代碼
utl*.sql 數據庫其他功能的表和視圖
下面來詳細介紹這四種不同類型的腳本功能:
cat*.sql 腳本
該類腳本主要用於創建數據字典視圖。其中,腳本catalog.sql 和 catproc.sql 是創建數據庫後必須要運行的兩個腳本。這兩個腳本的功能說明見表3所示。
腳本 腳本說明
catalog.sql 創建系統常用的數據字典視圖和同義詞
catproc.sql 運行服務器端所需要的PL/SQL腳本
(1) catalog.sql
該腳本創建相對於系統基表的視圖和系統動態性能視圖以及他們的同義詞。該腳本又同時運行創建其他對象的腳本,主要有:
基本PL/SQL環境,包括PL/SQL的聲明:
- 數據類型
- 預定義例外
- 內建的過程和函數
- SQL操作等
審計
導入/導出
SQL*Loader
安裝選項
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 腳本用來刪除這些表和視圖。