Oracle中的数据字典是数据库中的非常重要的一部分,提供了相关数据库的信息,它是所有Oracle用户的非常重要的信息来源...
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操作等