Oracle 資料庫管理指令碼命名規範(轉)
Oracle中的資料字典是資料庫中的非常重要的一部分,提供了相關資料庫的資訊,它是所有Oracle使用者(從應用的終端使用者、應用的設計開發者到資料庫管理員)的非常重要的資訊來源。資料字典的建立,是在Oracle資料庫建立完畢後,執行一些相關的資料庫管理指令碼來完成的。當採用Oracle統一安裝器(Oracle Universal Installer)建立資料庫時,Oracle伺服器有關的字典檢視和指令碼最後會被自動安裝。但當需要升級目前的Oracle資料庫伺服器時,資料庫管理員必須要手工重新執行建立這些檢視或指令碼的SQL。安裝完資料庫後,Oracle資料庫管理指令碼就存放在作業系統中。對於UNIX和NT作業系統,分別位於不同的物理目錄下,見表1所示:
作業系統 | 指令碼目錄位置 |
UNIX | $ORACLE_HOME/rdbms/admin |
NT | %ORACLE_HOME%dbmsadmin |
Oracle中幾乎所有的系統管理指令碼都儲存在該檔案目錄下,該目錄下含有上百個不同檔案。這些不同的檔案都有什麼作用呢?本文將詳細討論組成Oracle資料庫管理指令碼的命名規範。這樣使用者看到某個檔案大概就可以知道該檔案主要用途是什麼。該目錄下的檔案按照功能不同可分為4大類,Oracle為了容易區分這幾類不同的檔案,對於檔案的命名遵從一定的規則。見表2所示。
命名規則 | 功能描述 |
cat*.sql | 關於目錄和資料字典資訊 |
dbms*.sql | 資料庫中關於包的說明 |
prvt*.plb | 加密過的包程式碼 |
utl*.sql | 資料庫其他功能的表和檢視 |
下面來詳細介紹這四種不同型別的指令碼功能:
1、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 指令碼用來刪除這些表和檢視。
2、dbms*.sql 和 prvt*.plb 指令碼
這兩類指令碼用來建立擴充套件Oracle伺服器功能的系統預定義的一些Oracle包的物件。這些程式均用來完成資料庫管理任務。大多數的SQL指令碼在執行catproc.sql指令碼時被執行。一些額外的指令碼必須由資料庫管理員另外單獨執行。例如,dbmspool.sql 指令碼,用來顯示在共享池中物件的大小並且為了減少共享池碎塊可以將其在SGA中標記為保持或可刪除。
3、utl*.sql 指令碼
該類指令碼只有在資料庫需要另外的檢視和表時才需要執行。例如,指令碼utlxplan.sql,用來建立一個表,該表用於觀察SQL語句的執行計劃(Execution Plan)。
需要注意的是,絕大多數資料庫管理指令碼都必須在使用者SYS下執行。資料庫管理員如果打算執行這些指令碼,最好首先閱讀指令碼內容中的相關資訊,瞭解應該以什麼使用者來執行這些指令碼。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-954160/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 資料庫管理指令碼命名規範Oracle資料庫指令碼
- Oracle資料庫索引管理規範Oracle資料庫索引
- SQL Server資料庫命名規範SQLServer資料庫
- 檢查資料庫資料欄位命名規範和合法性的指令碼資料庫指令碼
- 資料庫表欄位命名規範資料庫
- 資料庫物件命名規範問題....資料庫物件
- Android 程式碼規範 - 命名規範Android
- Android程式碼規範:命名規範Android
- 資料庫運維管理規範資料庫運維
- MYSQL資料庫欄位命名及設計規範MySql資料庫
- 資料庫建表和上線指令碼常見規範資料庫指令碼
- 資料庫SQL開發命名規則 (轉)資料庫SQL
- 建立sqlserver資料庫指令碼 範例SQLServer資料庫指令碼
- (轉)oracle 資料庫效能健康檢查指令碼Oracle資料庫指令碼
- 建立SQL Server資料庫指令碼 範例SQLServer資料庫指令碼
- 檔案/資源命名規範
- 【iOS 搭建基礎框架】編碼規範 (命名規範篇)iOS框架
- PHP 命名規範PHP
- JavaScript 命名規範JavaScript
- PHP命名規範PHP
- CSS命名規範CSS
- SqlServer命名規範SQLServer
- Google命名規範Go
- java命名規範Java
- mysql資料庫規範MySql資料庫
- 資料庫命令規範資料庫
- MySQL資料庫規範 (設計規範+開發規範+操作規範)MySql資料庫
- oracle 資料庫效能健康檢查指令碼[轉帖]Oracle資料庫指令碼
- [轉]監控Oracle資料庫的常用shell指令碼Oracle資料庫指令碼
- 監控Oracle資料庫的常用shell指令碼(轉)Oracle資料庫指令碼
- Oracle資料庫管理指令碼介紹 (RDBMS目錄下)Oracle資料庫指令碼
- MySQL 規範 (資料庫表設計規範)MySql資料庫
- 資料庫規範之SQL規範寫法資料庫SQL
- 指令碼建立Oracle的資料庫指令碼Oracle資料庫
- 前端開發規範:命名規範、html規範、css規範、js規範前端HTMLCSSJS
- 『前端規範化』CSS命名規範化前端CSS
- Flyway版本化管理資料庫指令碼資料庫指令碼
- 資料庫的常規檢查指令碼資料庫指令碼