oracle常用数据字典的知识点有哪些

59次阅读
没有评论

共计 5769 个字符,预计需要花费 15 分钟才能阅读完成。

本篇内容介绍了“oracle 常用数据字典的知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一数据字典的分类
1. 静态数据字典表的 2. 静态数据字典视图 3 动态数据字典表 4 动态数据字典视图
二 数据字典的使用
1. 静态数据字典表的使用
静态数据字典表只能由 ORACLE 进行维护。
2. 静态数据字典视图的使用 *
通常用户通过对静态数据字典视图的查询可以获取所需 i 要的所有数据库信息。
Oracle 静态数据字典分类
名称前缀                                       含义  
user_                           包含了当前数据库用户所拥有的所有的模式对象的信息
all_                             包含了当前数据库用户可以访问的所有的模式对象的信息
dba_                           包含了所有数据库对象信息,只有具有 DBA 角色的用户才嫩而过访问的这些视图  
例如:
select * from dba_tables
select  * from all_tables
select   * from user_tables;
注:dba_ 开头的 必须是 sys 用户所有,非 sys 用户 需要在前面加 sys 前缀
下面都是一些常用的视图家族,都有一个 DBA_ ALL_ USER_ 的视图  
col_privs   包含了表的列权限信息,包含授予者,被授予者和权限名称等信息,
extents     存储分配信息,包括数据段名 表空间名和分区编号,分区大小
indexes     索引信息   包含索引类型,唯一性,索引作用等表的信息
ind_columns   索引列信息   包括索引上的列的排序方式等信息
object       对象信息,包括对象名称 类型   创建时间 等信息
segments   表和索引的数据段信息,包括表空间,存储设置等信息
sequences   序列信息 包含序列名称,循环性,最大值等信息
source     除触发器之外的所有存储过程,函数,包的源代码信息  
synonyms 同义词信息   包括引用的对象等信息
sys_privs   系统权限信息 包括系统权限名称 授予者
tab_columns   表和视图的列信息,包括列的数据类型等信息  
tab_privs   表权限信息  
tables   表信息 包括表所属的表空间,存储参数,数据行数量等信息。
triggers   触发器信息 包括触发器的类型,事件。触发器体等信息
users 用户信息。包括用户临时和默认的表空间的类型
views   视图 信息  
看一下权限视图  
role_sys_privs   角色拥有的系统权限视图
role_tab_privs   角色拥有的对象权限
user_role _ privs   用户拥有的角色  
user_sys_privs   用户拥有的权限的角色
user_tab_privs_mads     用户分配的关于表对象权限
user_tab_privs_recd   用户拥有的关于表对象权限
user_col_privs_mads   用户分配的关于列的对象权限
user_col_privs_recd   用户拥有的关于列的对象权限  
3.   动态性能表是数据库实例启动后   创建的表。动态性能表都数据 SYS 用户;用于存放数据库在运行的过程中的性能相关的信息。通过以下的视图查看  
 select name from  v_$fixed_table;
4. 动态性能视图的使用;
只有 sys 用户和拥有 DBA 角色的用户可以访问。
在数据库启动到 NOMOUNT 的状态时 可以访问 v$ parameter v$sga  v$session v$process v$instance v$version v$option 
当数据库启动到 mount 的状态时 我们还可以访问 v$ log v$logfiel v$datafile v$controlfile  v$ database v$thread  v$datafile_header  
当数据库完全启动后。可以访问 v_$fixed_table
v$access   包含当前被锁定的数据库对象及正在访问他们的会话
v$archive   包含归档所需的重做日志文件中的信息
v$ archived_log   包含从控制文件中获取的归档日志信息。
v$archive_processes   包含于一个实例相关的 arch 进程的状态信息  
v$ backup   包含联机数据文件的备份状态信息  
v$backup_async_io   包括从控制文件中获取的备份集的信息  
v$ backup_corruption   包含从控制文件中获取的有关数据文件备份中损坏的信息。
v$ backup_datafile   包含从控制文件中获取的备份的数据文件和备份控制文件的信息
v$ backup_device   包含支持备份设备的信息
v$backup_piece     包含从控制文件中获取的备份块的信息
v$backup_redolog     包含从控制文件中获取的关于备份集的归档日志的信息
v$backup_set     包含从控制文件中获取的备份集的信息
v$bgprocess 包含数据库后台进程信息
v$ buffer_pool   包含当前实例中所有可用缓冲池的信息
v$ buffer_pool_statistics   包含当前实例所有可用缓冲池的统计信息
v$ cache   包含当前实例的 SGA 中的每一块的头部信息
v$context   包含当前对话的属性信息。
v$controlfile   包含控制文件信息
v$ controlfile_record_section   包含控制文件记录部分的信息
v$ copy_curruption 包含从控制问价中获取的数据文件副本损坏的信息  
v$database   包含从控制文件中获取的数据库信息  
v$datafile   包含从控制文件中获取的数据文件信息
v$datafile_copy   包括从控制文件中获取的数据文件副本的信息
v$datafile_header   包含数据文件头部信息
v$ db_object_cache   包含缓存在库高速缓冲中的数据库对象信息
v$db_pipes   包含当前数据库中的管道信息
v$deleted_object   包含从控制文件中获取的被删除的归档日志,数据文件副本和备份块的信息
v$ dispatcher_rate   包含调度进程速率统计量的信息
v$ dispatche   包含调度进程的信息
 v$ DLM_ALL_LOCKS   包含当前所有锁
v$ DLM_CONVERT_LOCAL   包含本地锁转换操作所消耗的时间的信息  
v$ EVENT_NAME   包含等待时间的信息
v$ fixed_table   包含所有可用的动态性能视图和动态性能表的信息  
v$ sysstat   包含当前实例的性能统计信息
v$ instance   包含当前实例的详细信息  
v$sga   包含 SGA 区的主要组成部分的信息  
v$ sgainfo   包含 SGA 区的详细消息  
v$ parameter 包含初始化参数信息  
v$ sversion   包含 Oracle 版本信息  
v$ option   包含已安装的 Oraclette 组件的选项信息  
v$session   包含当前所有会话信息  
v$process   包含当前系统所有进程信息  
v$ bgprocess   包含数据库所有后台进程信息  
v$ database   包含当前数据库信息
v$ controlfile   包含当前数据库所有控制文件信息
v$ datafile   包含当前数据库所有的数据文件的信息  
v$ dbfile   包含所有数据文件的编号信息  
v$ logfile   包含当前数据库所有的重做日志文件信息
v$ log   包含当前数据库重做日志文件信息  
v$ log_history   包含重做日志文件切换情况的历史信息
v$ thread   包含当前数据库线程的信息
v$ lock 包含锁的信息  
v$ locked_object   包含被加锁的数据库对象信息  
v$ rollname 包含当前处于联机状态的回退信息  
v$ rollstat     包含当前所有的回退段的统计信息  
v$ tablespace   包含当前数据库所有表空间信息
v$ tempfile   包含当前数据库多有的临时数据文件的信息;
查看当前用户的缺省表空间
SQL select username,default_tablespace from user_users;
查看当前用户的角色
SQL select * from user_role_privs;
查看当前用户的系统权限和表级权限
SQL select * from user_sys_privs;
SQL select * from user_tab_privs;
查看用户下所有的表
SQL select * from user_tables;
查看用户下所有的表的列属性
SQL select * from USER_TAB_COLUMNS where table_name=:table_Name;
显示用户信息(所属表空间)
select default_tablespace,temporary_tablespace 
from dba_users where username= GAME
1、用户

查看当前用户的缺省表空间
SQL select username,default_tablespace from user_users;

查看当前用户的角色
SQL select * from user_role_privs;

查看当前用户的系统权限和表级权限
SQL select * from user_sys_privs;
SQL select * from user_tab_privs;

显示当前会话所具有的权限
SQL select * from session_privs;

显示指定用户所具有的系统权限
SQL select * from dba_sys_privs where grantee= GAME

显示特权用户
select * from v$pwfile_users;

显示用户信息(所属表空间)
select default_tablespace,temporary_tablespace 
from dba_users where username= GAME

显示用户的 PROFILE
select profile from dba_users where username= GAME

2、表

查看用户下所有的表
SQL select * from user_tables;

查看名称包含 log 字符的表
SQL select object_name,object_id from user_objects
where instr(object_name, LOG)

查看某表的创建时间
SQL select object_name,created from user_objects where object_name=upper(table_name

查看某表的大小
SQL select sum(bytes)/(1024*1024) as size(M) from user_segments
where segment_name=upper(table_name

查看放在 Oracle 的内存区里的表
SQL select table_name,cache from user_tables where instr(cache, Y)

3、索引

查看索引个数和类别
SQL select index_name,index_type,table_name from user_indexes order by table_name;

查看索引被索引的字段
SQL select * from user_ind_columns where index_name=upper(index_name

查看索引的大小
SQL select sum(bytes)/(1024*1024) as size(M) from user_segments
where segment_name=upper(index_name

4、序列号

查看序列号,last_number 是当前值
SQL select * from user_sequences;

5、视图

查看视图的名称
SQL select view_name from user_views;

查看创建视图的 select 语句
SQL set view_name,text_length from user_views;
SQL set long 2000; 说明:可以根据视图的 text_length 值设定 set long 的大小
SQL select text from user_views where view_name=upper(view_name

6、同义词

查看同义词的名称
SQL select * from user_synonyms;

7、约束条件

查看某表的约束条件
SQL select constraint_name, constraint_type,search_condition, r_constraint_name
from user_constraints where table_name = upper(table_name

SQL select c.constraint_name,c.constraint_type,cc.column_name
from user_constraints c,user_cons_columns cc
where c.owner = upper(table_owner) and c.table_name = upper(table_name)
and c.owner = cc.owner and c.constraint_name = cc.constraint_name
order by cc.position;

8、存储函数和过程
查看函数和过程的状态
SQL select object_name,status from user_objects where object_type= FUNCTION
SQL select object_name,status from user_objects where object_type= PROCEDURE
查看函数和过程的源代码
SQL select text from all_source where owner=user and name=upper(plsql_name

“oracle 常用数据字典的知识点有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-15发表,共计5769字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)