欢迎来到天天文库
浏览记录
ID:49477890
大小:119.50 KB
页数:34页
时间:2020-02-25
《数据字典与动态视图.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据字典与动态视图数据字典数据字典是Oracle数据库重要的组成部分,是元数据(metadata)的存储地点,它用于提供数据库的相关系统信息。数据字典的维护和修改是由系统自动完成的,而用户只能执行SELECT语句查询系统信息。模式(Schema)模式是用户所拥有对象的集合,在Oracle数据库中,用户与模式是一一对应的关系,并且二者名称相同。模式SYSTEM模式stu_00用户SYSTEM用户stu_00数据字典OracleRDBMS使用数据字典记录和管理对象信息和安全信息等,用户和数据库系统管理员可以通过数据字典来获取数据库相关信息。数据字典是数据库的
2、核心,通过数据字典,oracle数据库基本上可以实现自解释。数据字典是只读的,通常不建议对任何数据字典表中的任何信息进行手工更新或改动,对于数据字典的修改很容易就会导致数据库紊乱,造成无法恢复的后果,而且oracle公司不对此类操作带来的后果负责。数据字典包括以下内容所有数据库Schema对象的定义(表、视图、索引、聚簇、同义词、序列、过程、函数、包、触发器等);数据库的空间分配和使用情况;字段的缺省值;完整性约束信息;Oracle用户名称、角色、权限等信息;审计信息;其他数据库信息。数据字典所有数据字典都属于SYS模式,并且存放在SYSTEM表空间中。
3、数据字典由基表(内部RDBMS(X$)表和数据字典表)和视图(动态性能(V$)视图和数据字典视图)两部分构成。其中基表存放数据库的基本信息,普通用户无法读写。数据字典视图存放基表解码后的信息,用户可以通过它查询系统信息。内部RDBMS(X$)表X$表是oracle数据库的核心部分,这些表用于跟踪内部数据库信息,维持数据库的正常运行。X$表是加密命名的,而且oracle不作文档说明,这部分知识是oracle公司的技术机密,oracle通过这些X$表建立起其他大量视图,提供用户查询管理数据库之用。但是由于X$表记录了大量的有用信息,所以也不停地被全球的DBA
4、不懈地探索着,最为人所熟知的有X$BH、X$KSMKP等。X$表是oracle数据库的运行基础,在数据库启动时由oracle应用程序动态创建。这部分表对数据库来说至关重要,所以oracle不允许SYSDBA之外的用户直接访问,显示授权不被允许。数据字典表数据字典表(DataDictionaryTable)用以存储表、索引、约束以及其他数据库结构的信息。这些对象通常以“$”结尾(如tab$、obj$、ts$等),在创建数据库的时候通过运行sql.bsq脚本来创建。sql.bsq是非常重要的一个文件,其中包含了数据字典表的定义及注释说明。该文件位于..rd
5、bmsadmin目录下。建立数据字典视图建立数据字典基表,运行脚本:SQL>@%oracle_home%rdbmsadminsql.bsq;建立数据字典视图,运行脚本:SQL>@%oracle_home%rdbmsadmincatalog.bsq;数据字典视图分类以ALL_开头的数据字典视图以USER_开头的数据字典视图以DBA_开头的数据字典视图在Oracle中,用户与模式一一对应,用户可以访问其模式的所有对象,如果用户要访问其他模式的对象,必须要有相应的对象特权。模式SYSTEM模式stu_00用户stu_00各类数据视图比较USER_
6、数据字典视图:显示当前模式的所有对象信息。(user_objects)ALL_数据字典视图:显示用户可访问的所有对象信息。(all_objects)DBA_数据字典视图:显示整个数据库范围内的系统信息。(dba_objects)以USER_开头的数据字典视图USER_数据字典只显示当前模式的详细信息。SELECTobject_nameFROMuser_objectsWHEREobject_type=‘TABLE’;以ALL_开头的数据字典视图ALL_数据字典视图可用于查询用户可访问的所有对象信息。SELECTowner,object_nameFROMal
7、l_objectsWHEREobject_type=‘TABLE’;以DBA_开头的数据字典视图DBA_数据字典视图用于显示整个数据库范围内的系统信息。(要求用户有DBA角色或SELECTANYTABLE系统权限)SELECTowner,object_nameFROMdba_objectswhereobject_type=‘TABLE’;数据字典内容通过查询数据字典,可以取得以下数据信息:数据库对象定义数据对象所占用空间及已使用空间列信息约束信息用户名以及用户所具有的特权和角色动态性能视图动态性能视图用于记录当前数据库的活动信息,他们是由OracleSe
8、rver自动维护和修改的。当启动OracleServer时,系统会自动建立动态性
此文档下载收益归作者所有