<Oracle Database>数据字典
数据字典
数据字典是由Oracle服务器创建和维护的一组只读的系统表,它存放了有关数据库和数据库对象的信息,Oracle服务器依赖这些信息来管理和维护Oracle数据库。
数据字典分为两大类:一种是基表,另一种是数据字典视图。
Oracle服务器在数据库创建时自动生成基表,在任何数据库中,基表都是被最先创建的对象。由于基表中所存的数据过于复杂,因此这些基表很少直接被访问。数据字典视图则是把
数据字典基表中的信息转换为人们较为容易理解的形式,它们包含了用户名、用户的权限、对象名、约束和审计等方面的信息。
数据字典中的信息
数据字典中存储了如下的数据库信息:
- 数据库的逻辑结构和物理结构。如表空间和数据文件的信息
- 所有数据库对象定义的信息。这些对象包括表、索引、视图、序列号、同义词、过程、函数、软件包和触发器等。
- 所有数据库对象的磁盘空间分配信息。如对象所分配的磁盘空间和当前正在使用的磁盘空间。
- Oracle用户名。
- 每个用户所授予的权限和角色。
- 完整性约束的信息。
- 列的默认值。
- 审计信息。
数据字典的操作和使用
数据字典主要是由Oracle服务器来使用的,包括从数据字典中获取信息和及时修改相应数据字典信息。
可以修改Oracle服务器数据字典的SQL语句:
- DDL语句。如增加或减少表空间,增加或减少用户。
- DCL语句。如授予用户权限、回收用户权限等。
- 某些DML语句也可能间接地引起Oracle服务器修改数据字典。如引起表的磁盘空间的扩展的插入(INSERT)或修改(UPDATE)语句。
当数据管理员或用户使用DDL或DCL语句时,Oracle服务器都要将相关的信息记录到数据字典中。
但是,任何用户包括数据库管理员(DBA)都不能直接使用DML语句修改数据字典中的内容,只能通过访问数据字典(视图)来得到数据库相关信息。
数据字典视图
数据字典视图主要包括三大类,它们分别用前缀来区别,其前缀分别为USER、ALL和DBA。
- USER_* :有关用户所拥有的对象的信息。即用户自己创建的对象的信息。
- ALL_* :有关用户可以访问的对象的信息。即用户自己创建的对象的信息及授权给PUBLIC的帐户用户所拥有的对象的信息。
- DBA_* :有关整个数据库中对象的信息。
这里的*可以为TABLES、INDEXES、VIEWS、OBJECTS等。
查看这类数据字典视图的结构:
desc user_tables;
desc all_tables;
desc dba_tables;
可以看出,这三类数据字典视图的列几乎是相同的,只是以前缀为ALL和DBA开始的数据字典视图中比USER中多了一列OWNER。
其他的字典视图中主要的是V$视图,之所以这样叫是因为他们都是以V$或GV$开头的。由于当数据库运行的时候它们会不断进行更新,所以称它们为动态数据字典。
V$视图是基于X$虚拟视图的。V$视图是SYS用户所拥有的,在缺省状况下,只有SYS用户和拥有DBA系统权限的用户可以看到所有的视图,没有DBA权限的用户可以看
到USER_*和ALL_*,但不能看到DBA_*。
<Oracle Database>数据字典的更多相关文章
- 《Oracle Database 12c DBA指南》第一章 - 基本技能简介
当前关于12c的中文资料比较少,本人将关于DBA的一部分官方文档翻译为中文,很多地方为了帮助中国网友看懂文章,没有按照原文句式翻译,翻译不足之处难免,望多多指正. 1 基本技能简介 作为一个数据库管理 ...
- oracle 之数据字典屣履造门。
oracle 之数据字典屣履造门.(更新中) 今天是2013-06-20,哎,写这篇笔记的时候,我发现我是一个非常懒惰的人,这篇文章本该昨天就完成的,想起了钱鹤滩的<明日歌> ...
- Oracle Database 11g : SQL 基础
简介 1:课程目标 2:课程 目标 3:Oracle Database 11g 以及相关产品概览 1:Oracle Database 11g :重点领域 2:Oracle Fusion Middlew ...
- Opatching PSU in Oracle Database 11g Release 2 RAC on RHEL6
Opatching PSU in Oracle Database 11g Release 2(11.2.0.4) RAC on RHEL6 1) 升级opatch工具 1.1) For GI home ...
- oracle数据库数据字典应用
oracle数据字典 数据字典是由oracle服务器创建和维护的一组只读的系统表.数据字典分为两类:一是基表,二是数据字典视图. 数据字典视图包括用户名.用户权限.对象名.约束和审计等信息,是通过运行 ...
- CHAPTER 1 Architectural Overview of Oracle Database 11g
Which SGA structures are required, and which are optional? The database buffer cache, log buffer, an ...
- Oracle Database 12c Data Redaction介绍
什么是Data Redaction Data Redaction是Oracle Database 12c的高级安全选项之中的一个新功能,Oracle中国在介绍这个功能的时候,翻译为“数据编纂”,在EM ...
- 使用技术手段限制DBA的危险操作—Oracle Database Vault
概述 众所周知,在业务高峰期,某些针对Oracle数据库的操作具有很高的风险,比如修改表结构.修改实例参数等等,如果没有充分评估和了解这些操作所带来的影响,这些操作很可能会导致故障,轻则导致应用错误, ...
- Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之ORACLE集群概念和原理(二)
ORACLE集群概念和原理(二) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体 ...
随机推荐
- design pattern
1. visitor design pattern http://butunclebob.com/ArticleS.UncleBob.IuseVisitor
- table的遍历
1.for k,v in pairs (tbtest) do 这样的遍历顺序并不是tbtest中table的排列顺序,而是根据tbtest中key的hash值排列的顺序来遍历的 2.for k,v i ...
- Unity开发心路历程——制作画板
有人说 编程是份很无聊的工作 因为整个工作时间面对的都是电脑这种机器 因为眼睛盯着的内容都是索然无味的代码 因为总是会有意想不到的bug让你怀疑自己的智商 而我认为 编程是件及其有意思的事情 可观的收 ...
- Unity协程截图,WWWForm、WWW配合上传
先说一下原理.. 截图有两种方法,第一种: Application.CaptureScreenshot(url); 这个API可以截全屏并保存到指定路径 这里我们不采用此方法 下面的代码采用第二种方法 ...
- javascript全局变量和局部变量
局部变量和全局变量可以同名.不过在函数体内部,局部变量的优先级高于全局变量.需要格外注意:专用于函数体内部的变量一定要用var关键字声明,否则该变量会变成全局变量.因为js是弱类型语言,所以它可以存放 ...
- C#窗体技巧
//限制文本框只能输入数字且允许按退格键删除数字,其它键盘输入不予显示private void 文本框名_KeyPress(object sender, KeyPressEventArgs e) { ...
- SQL Server 查询所有外键子父表关系
SELECT table_name,fk_name,reference_table_name,fk_list_number,fk_detailFROM (SELECT object_name(f.ob ...
- hibernate基础
另存为查看吧
- 金蝶EAS BOS上如何打补丁
主要分为2种方式,直接通过BOS管理平台,去安装补丁 另一种方式就是通过本地zip压缩包去打补丁,以我的安装目录包为例路径为:E:\kingdee\kingserver\eas\admin\patch ...
- DSP(1) -- 离散时间信号的序列类型
1.单位采样序列δ(n):在MATLAB 中函数zeros(1,N)产生一个由N个零组成的列向量.它可用来实现有限区间的δ(n).然而,更高明的方法是利用逻辑关系式n==0来实现δ(n). 2.单位阶 ...