技能提升:Oracle数据字典
想了解系统的有关内容和问题 Q&A
查询数据库中当前存在的Oracle用户:
select username from dba_users;
查询本用户所拥有的系统权限:
select * from user_sys_privs;
查询本用户拥有其他用户对象的权限:
select * from user_tab_privs;
查询本用户拥有的对象:
select * from user_catalog;
当前数据库的详细信息$DATABASE
取得oracle版本的详细信息 V$VERSION
当前数据库所有日志文件的信息v$logfile
当前数据库所有控制文件的信息。 V$CONTROLFILE
当前数据库所有数据文件的详细信息。 V$DATAFILE
Oracle数据字典
静态数据字典:记录了系统资源信息、用户登录信息及数据库信息等几乎所有内容
动态性能表:是一组虚拟表,记录当前数据库的活动情况和性能参数
一、Oracle静态数据字典对数据库的重要性
描述Oracle系统的活动信息和所有用户对象的定义信息
包含只读表和视图信息
存放在system表空间
由SYS用户拥有
由 Oracle server维护
通过select查询信息
静态数据字典提供有关该数据库的信息 :
数据库的逻辑结构和物理结构信息
有关数据库中对象定义、空间分布情况
关于完整性约束的信息;
用户
角色
权限
审计
静态数据字典分类静态数据字典中的视图分为三类
范围区别:
DBA:数据库中所有对象
ALL:当前用户能够访问的对象
USER:当前用户所拥有的对象
静态数据字典的示例:
全部数据字典表的名称和解释 :
dictionary 全部数据字典表的名称和解释,同义词dict
dict_column 全部数据字典表里字段名称和解释
数据库对象:
DBA_TABLES, DBA_INDEXES, DBA_TAB_COLUMNS, DBA_CONSTRAINTS
空间分配:
DBA_SEGMENTS, DBA_EXTENTS
数据库结构:
DBA_TABLESPACES, DBA_DATA_FILES
如果你觉的这个教程难以理解,更好的阅读与理解,请下载本文电子档:
Oracle学习情境1:创建数据库二、动态性能表虚拟表
记录当前数据库的活动情况
数据库运行时不断进行更新
诊断和解决系统运行所出现的问题
SYS维护的表和视图
建立了公用同义词(以V$开头)
动态性能表的示例:
V$INSTANCE用于获取当前例程的详细信息。
V$SGA用于取得SGA更详细的信息。
V$PARAMETER用于取得初始化参数的详细信息。
V$VERSION用于取得oracle版本的详细信息。
V$SESSION 用于显示会话的详细信息。
V$BGPROCESS 用于显示后台进程的详细信息
V$DATABASE 用于取得当前数据库的详细信息
V$CONTROLFILE 数据库所有控制文件的信息。
V$DATAFILE 数据库所有数据文件的详细信息V$LOGFILE 用于显示重做日志成员的信息。
V$LOG 用于显示日志组的详细信息。
V$THREAD 用于取得重做线程的详细信息。
本章小结:
Oracle数据库服务器由数据库和实例组成。
实例由内存结构和一组后台进程组成。
Oracle内存由SGA和PGA组成。
Oracle后台进程主要由数据写进程(DBWR)、日志写进程(LGWR)、系统监控(SMON)、进程监控(PMON)、检查点进程(CKPT)构成。
Oracle数据库划分有逻辑结构和物理结构。
逻辑结构主要包括表空间、数据对象、段、区、数据块。
物理结构主要由数据文件、控制文件和日志文件组成。
Oracle数据字典由一组表和视图构成, 可以把数据字典划分为静态数据字典和动态性能表两大类。