- List item
本文介绍一些Oracle DB日常运维最常用到(使用频率很高)的视图及数据字典
用户有关的常用视图:
1、 查看当前用户的缺省表空间*
SQL>select username,default_tablespace from user_users;
2、 查看当前用户的角色
SQL>select * from user_role_privs;
3、 查看当前用户的系统权限和表级权限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;
4、 查看用户下所有的表
SQL>select * from user_tables;
5、 查看用户下所有的表的列属性:
SQL>select * from USER_TAB_COLUMNS where table_name=:table_Name;
6、 显示用户信息(所属表空间)
select default_tablespace, temporary_tablespace from dba_users where username = ‘HR’;
7、 显示当前会话所具有的权限
SQL>select * from session_privs;
8、 显示指定用户所具有的系统权限
SQL>select * from dba_sys_privs where grantee=‘HR’;
9、 显示特权用户
select * from v$pwfile_users;from dba_users where username=‘HR’;
10、 显示用户的PROFILE
select profile from dba_users where username=‘GAME’;
11、查询所有profile
select * from dba_profiles;
表相关的常用视图
1、 查看用户下所有的表
SQL>select * from user_tables;
2、 查看名称包含 log 字符的表
SQL>select object_name,object_id from user_objects where instr(object_name,‘LOG’)>0;
3、 查看某表的创建时间
SQL>select object_name,created from
user_objects where
object_name=upper(‘&table_name’);
4、 查看某表的大小
SQL>select sum(bytes)/(1024*1024) as “size(M)” from user_segments
where segment_name=upper(‘&table_name’);
5、 查看当前存放在Oracle的内存区里的表
select table_name,cache from user_tables where instr(cache,‘Y’)>0;
索引有关的常用视图
1、 查看索引个数和类别
SQL>select index_name,index_type,table_name from user_indexes order by table_name;
2、 查看索引被索引的字段
SQL>select * from user_ind_columns where index_name=upper(‘&index_name’);
3、 查看索引的大小
SQL>select sum(bytes)/(1024*1024) as “size(M)” from user_segments
where segment_name=upper(‘&index_name’);
序列号有关的常用视图
1、 查看序列号,last_number是当前值
SQL>select * from user_sequences;
视图相关的常用视图
1、 查看视图的名称(dba_views)
SQL>select view_name from user_views;
2、 查看创建视图的select语句 :
SQL>set long 2000;-- 说明:可以根据视图的text_length值设定set long 的大小
SQL>select text from user_views where view_name=upper(‘&view_name’);
3.查看物化视图
select * from dba_mviews;
同义词相关的常用视图
1、 查看同义词的名称
SQL>select * from user_synonyms;
约束相关的常用视图
1、 查看某表的约束条件
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;
存储函数和过程有关的常用视图
1、 查看函数和过程的状态
SQL>select object_name,status from user_objects where object_type=‘FUNCTION’;
SQL>select object_name,status from user_objects where object_type=‘PROCEDURE’;
2、 查看函数和过程的源代码(PL/SQL)
SQL>select text from all_source where owner=user and name=upper(‘&plsql_name’);
常用的数据字典
dba_data_files:用来查询关于数据库文件的信息
dba_db_links:包括数据库中的所有数据库链路,也就是databaselinks.dblink
dba_extents:数据库中所有分区的信息
dba_free_space:所有表空间中的自由分区
dba_indexs:关于数据库中所有索引的描述
dba_ind_columns:在所有表及聚集上压缩索引的列
dba_objects:数据库中所有的对象
dba_rollback_segs:回滚段的描述
dba_segments:所有数据库段分段的存储空间,统计数据库的大小,统计表大小
dba_synonyms:关于同义词的信息查询
dba_tables:数据库中所有数据表的描述
dba_tabespaces:关于表空间的信息
dba_tab_columns:所有表描述、视图以及聚集的列
dba_tab_grants/privs:对象所授予的权限dba_ts_quotas:所有用户表空间限额
dba_users:关于数据的所有用户的信息
dba_views:数据库中所有视图的文本
常用的动态性能视图:
- List item
v$ datafile:数据库使用的数据文件信息
v$ librarycache:共享池中SQL语句的管理信息
v$ lock:通过访问数据库会话,设置对象锁的所有信息
v$ log:从控制文件中提取有关重做日志组的信息
v$ logfile有关实例重置日志组文件名及其位置的信息
v$ parameter:初始化参数文件中所有项的值 show parameter
v$ process:当前进程的信息 系统进程
v$ rollname:回滚段信息
v$ rollstat:联机回滚段统计信息
v$ rowcache:内存中数据字典活动/性能信息
v$ session:有关会话的信息
码字不易,宝贵经验分享不易,请各位支持原创,转载注明出处,多多关注作者,后续不定期分享DB基本知识和排障案例及经验、性能调优等。