欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle用户信息查询操作语句

程序员文章站 2022-04-09 09:51:15
...

Oracle用户信息查询操作语句dba_XXX 需要有权限才能查看,否则会报表和视图不存在的错误 1. 查询所有用户(username, tablespace

Oracle用户信息查询操作语句

首页 → 数据库技术

背景:

阅读新闻

Oracle用户信息查询操作语句

[日期:2013-08-10] 来源:Linux社区 作者:Linux [字体:]

Oracle用户信息查询操作语句
dba_XXX 需要有权限才能查看,否则会报表和视图不存在的错误

1. 查询所有用户(username, tablespace 信息)
[sql]
select * from dba_users;
select * from all_users;
//当前用户
select * from user_users;


2. 查看用户或角色的系统权限
[sql]
select * from dba_sys_privs;
//当前用户拥有的权限
select * from user_sys_privs;

3. 查看当前登录用户所拥有的角色所包含的权限
[sql]
select * from role_sys_privs;

4. 查看用户对象权限(对表和视图等的权限)
[sql]
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;

5. 查看所有角色
[sql]
select * from dba_roles;

6. 查看用户和角色所拥有的角色
[sql]
select * from dba_role_privs;
select * from user_role_privs;

7. 查询哪些用户有sysdba或sysopr 系统权限
[sql]
select * from v$PWFILE_USERS;

8. 查看一个用户所拥有的权限(username必须大写)
[sql]
select * from dba_sys_privs where grantee='USERNAME';

9. 删除指定用户的所有表
[sql]
select 'Drop table '||table_name||';' from all_tables where owner='USERNAME';


10. 删除用户
[sql]
drop user USERNAME cascade;

11. 获取当前用户下所有的表
[sql]
select table_name from user_tables;
12. 删除某用户下所有的表数据
[sql]
select 'truncate table '||tablename from user_tables;

推荐阅读:

[Oracle] 在没有备份的情况下undo损坏怎么办?

UNDO表空间失败的处理方法

undo表空间故障和ORA-01548处理

RAC下丢失undo表空间的恢复

UNDO表空间备份恢复