文章詳情頁
Oracle數(shù)據(jù)庫管理腳本介紹
瀏覽:2日期:2023-11-14 09:19:06
Oracle數(shù)據(jù)庫治理腳本介紹 Oracle中的數(shù)據(jù)字典是數(shù)據(jù)庫中的非常重要的一部分,提供了相關(guān)數(shù)據(jù)庫的信息,它是所有Oracle用戶(從應(yīng)用的最終用戶、應(yīng)用的設(shè)計開發(fā)者到數(shù)據(jù)庫治理員)的非常重要的信息來源。 數(shù)據(jù)字典的創(chuàng)建,是在Oracle數(shù)據(jù)庫創(chuàng)建完畢后,運行一些相關(guān)的數(shù)據(jù)庫治理腳本來完成的。當(dāng)采用Oracle統(tǒng)一安裝器(Oracle Universal Installer)創(chuàng)建數(shù)據(jù)庫時,Oracle服務(wù)器有關(guān)的字典視圖和腳本最后會被自動安裝。但當(dāng)需要升級目前的Oracle數(shù)據(jù)庫服務(wù)器時,數(shù)據(jù)庫治理員必須要手工重新運行創(chuàng)建這些視圖或腳本的SQL。安裝完數(shù)據(jù)庫后,Oracle數(shù)據(jù)庫治理腳本就存放在操作系統(tǒng)中。對于UNIX和NT操作系統(tǒng),分別位于不同的物理目錄下,見表1所示:操作系統(tǒng) 腳本目錄位置UNIX $ORACLE_HOME/rdbms/adminNT %ORACLE_HOME%rdbmsadminOracle中幾乎所有的系統(tǒng)治理腳本都保存在該文件目錄下,該目錄下含有上百個不同文件。這些不同的文件都有什么作用呢?本文將具體討論組成Oracle數(shù)據(jù)庫治理腳本的命名規(guī)范。這樣用戶看到某個文件大概就可以知道該文件主要用途是什么。該目錄下的文件按照功能不同可分為4大類,Oracle為了輕易區(qū)分這幾類不同的文件,對于文件的命名遵從一定的規(guī)則。見表2所示。命名規(guī)則 功能描述cat*.sql 關(guān)于目錄和數(shù)據(jù)字典信息dbms*.sql 數(shù)據(jù)庫中關(guān)于包的說明prvt*.plb 加密過的包代碼utl*.sql 數(shù)據(jù)庫其他功能的表和視圖(表2 數(shù)據(jù)庫治理腳本命名規(guī)范)下面來具體介紹這四種不同類型的腳本功能:1、cat*.sql 腳本該類腳本主要用于創(chuàng)建數(shù)據(jù)字典視圖。其中,腳本catalog.sql 和 catproc.sql 是創(chuàng)建數(shù)據(jù)庫后必須要運行的兩個腳本。這兩個腳本的功能說明見表3所示。腳本 腳本說明catalog.sql 創(chuàng)建系統(tǒng)常用的數(shù)據(jù)字典視圖和同義詞catproc.sql 運行服務(wù)器端所需要的PL/SQL腳本(表3 創(chuàng)建數(shù)據(jù)字典視圖腳本說明)(1) catalog.sql該腳本創(chuàng)建相對于系統(tǒng)基表的視圖和系統(tǒng)動態(tài)性能視圖以及他們的同義詞。該腳本又同時運行創(chuàng)建其他對象的腳本,主要有:基本PL/SQL環(huán)境,包括PL/SQL的聲明: - 數(shù)據(jù)類型 - 預(yù)定義例外 - 內(nèi)建的過程和函數(shù) - SQL操作等審計導(dǎo)入/導(dǎo)出SQL*Loader安裝選項(2)catproc.sql該腳本主要用于建立PL/SQL功能的使用環(huán)境。此外,還創(chuàng)建幾個PL/SQL包用于擴(kuò)展RDBMS功能。該腳本同時還為下面的一些RDBMS功能創(chuàng)建另外的一些包和視圖:警告(Alerts)管道(Pipes)日志分析(LogMiner)大對象(Large objects)對象(Objects)高級隊列(Advanced queuing)復(fù)制選項( Replication option)其他的一些內(nèi)建包和選項(Other built-ins and options)(3)其他腳本在該目錄下還有其他一些腳本用來擴(kuò)展Oracle數(shù)據(jù)庫服務(wù)器功能。如,catadt.sql 腳本用來創(chuàng)建RDBMS中用來顯示兆數(shù)據(jù)信息的數(shù)據(jù)字典視圖。catnoadt.sql 腳本用來刪除這些表和視圖。2、dbms*.sql 和 prvt*.plb 腳本這兩類腳本用來創(chuàng)建擴(kuò)展Oracle服務(wù)器功能的系統(tǒng)預(yù)定義的一些Oracle包的對象。這些程序均用來完成數(shù)據(jù)庫治理任務(wù)。大多數(shù)的SQL腳本在運行catproc.sql腳本時被執(zhí)行。一些額外的腳本必須由數(shù)據(jù)庫治理員另外單獨執(zhí)行。例如,dbmspool.sql 腳本,用來顯示在共享池中對象的大小并且為了減少共享池碎塊可以將其在SGA中標(biāo)記為保持或可刪除。3、utl*.sql 腳本該類腳本只有在數(shù)據(jù)庫需要另外的視圖和表時才需要運行。例如,腳本utlXPlan.sql,用來創(chuàng)建一個表,該表用于觀察SQL語句的運行計劃(Execution Plan)。需要注重的是,絕大多數(shù)數(shù)據(jù)庫治理腳本都必須在用戶SYS下運行。數(shù)據(jù)庫治理員假如打算運行這些腳本,最好首先閱讀腳本內(nèi)容中的相關(guān)信息,了解應(yīng)該以什么用戶來運行這些腳本。
標(biāo)簽:
Oracle
數(shù)據(jù)庫
上一條:Oracle面試問題-技術(shù)篇下一條:ORACLE鎖的管理
排行榜
