oracle报错查询动态视图,Oracle的基本操作-数据字典和动态性能视图的介绍

本文介绍了Oracle数据库中数据字典的概念,包括DBA_、ALL_和USER_前缀的用途,并通过示例展示了如何查询和使用。同时,也讲解了动态性能视图v$session和v$process的查询方法。此外,还涉及到权限管理,如用户解锁、权限授予等操作。最后,演示了如何在SYS用户下授权给scott用户查询DBA_OBJECTS数据字典。
摘要由CSDN通过智能技术生成

Oracle的基本操作-数据字典和动态性能视图的介绍

发布时间:2020-06-30 15:17:28

来源:51CTO

阅读:244

作者:forest冯宋林

三、数据字典和动态性能视图的介绍

1. 数据库的数据字典

(1) DBA_   全库所有的某种对象的数据字典

只有系统用户才有权限查询

(2) ALL_   当前用户创建的对象 + 其他用户授予当前用户使用的对象

当前用户

(3) USER_  当前用户创建的对象

当前用户

操作实例:

解锁一个用户hr并改密码

SQL> alter user hr account unlock;

User altered.

SQL> alter user hr identified by hr;

User altered.

在scott用户下,查看hr用户下的表

SQL> conn scott/scott;

Connected.

SQL> select * from hr.jobs;

select * from hr.jobs

*

ERROR at line 1:

ORA-00942: table or view does not exist        --报错,表或视图不存在

SQL> conn hr/hr

Connected.

SQL> grant select on jobs to scott;        --授予select权限

Grant succeeded.

SQL> insert into hr.jobs values('HR_REP','asdfasd',1232,5545);

insert into hr.jobs values('HR_REP','asdfasd',1232,5545)

*

ERROR at line 1:

ORA-01031: insufficient privileges

在某个用户下:以下语句是等效的:

select * from user_objects where object_type='TABLE';

=select * from user_tables;

2. 动态性能视图

select * from v$session;

select * from v$process;

练习:在SYS用户下查询DBA_OBJECTS,但是在scott用户下查不到的,授权查询给scott,使scott能够查询这个数据字典

SQL> conn scott/scott;

Connected.

SQL> select * from dba_objects;

select * from dba_objects

*

ERROR at line 1:

ORA-00942: table or view does not exist

SQL> conn /as sysdba

Connected.

SQL> grant select on dba_objects to scott;

Grant succeeded.

一、DBA最常用的数据字典 dba_data_files:通常用来查询关于数据库文件的信息 dba_db_links:包括数据库中的所有数据库链路,也就是databaselinks。 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:数据库中所有视图的文本 二、DBA最常用的动态性能视图 v$datafile:数据库使用的数据文件信息 v$librarycache:共享池中SQL语句的管理信息 v$lock:通过访问数据库会话,设置对象锁的所有信息 v$log:从控制文件中提取有关重做日志组的信息 v$logfile有关实例重置日志组文件名及其位置的信息 v$parameter:初始化参数文件中所有项的值 v$process:当前进程的信息 v$rollname:回滚段信息 v$rollstat:联机回滚段统计信息 v$rowcache:内存中数据字典活动/性能信息 v$session:有关会话的信息 v$sesstat:在v$session中报告当前会话的统计信息 v$sqlarea:共享池中使用当前光标的统计信息,光标是一块内存区域,有Oracle处理SQL语句时打开。 v$statname:在v$sesstat中报告各个统计的含义 v$sysstat:基于当前操作会话进行的系统统计 v$waitstat:出现一个以上会话访问数据库的数据时的详细情况。当有一个以上的会话访问同一信息时,可出现等待情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值