本文主要介绍了如何在Oracle数据库中查看连接数、用户信息、数据库锁定进程以及相关的权限查询方法。这包括了对当前数据库活动连接、并发连接、各个用户连接数的统计,用户列表的获取,以及系统权限、角色权限、对象权限的详细查询。此外,还提供了检查具有sysdba或sysoper权限的用户的方法,以及如何处理数据库中的锁定进程。 在Oracle数据库管理中,了解数据库的连接情况是非常重要的。以下是一些常用的SQL查询语句: 1. 查看Oracle的连接数:通过查询`v$session`视图可以得到数据库的总连接数,SQL语句是 `SELECT COUNT(*) FROM v$session;` 2. 查询Oracle的并发连接数:要获取当前活跃的并发连接数,可以使用 `SELECT COUNT(*) FROM v$session WHERE status = 'ACTIVE';` 这将返回正在进行活动的会话数量。 3. 查看不同用户的连接数:若需按用户名分组统计连接数,可以执行 `SELECT username, COUNT(username) FROM v$session WHERE username IS NOT NULL GROUP BY username;` 如果还想包含用户登录的机器信息,可以加上 `machine` 字段,如 `SELECT username, machine, COUNT(username) FROM v$session WHERE username IS NOT NULL GROUP BY username, machine;` 4. 查看所有用户:要列出所有用户,可以查询 `all_users` 表,命令是 `SELECT * FROM all_users;` 5. 查询用户或角色的系统权限:要查看直接赋予用户或角色的系统权限,可以查询 `dba_sys_privs`(全局视图)和 `user_sys_privs`(当前用户视图),例如 `SELECT * FROM dba_sys_privs;` 和 `SELECT * FROM user_sys_privs;` 6. 查看角色包含的权限:如果想查看角色的系统权限,可以查询 `role_sys_privs` 视图,而如果只想看当前用户的角色权限,使用 `SELECT * FROM role_sys_privs;` 7. 查看用户对象权限:要获取用户对表、视图等对象的权限,可以查询 `dba_tab_privs`, `all_tab_privs` 和 `user_tab_privs`,如 `SELECT * FROM dba_tab_privs;` 8. 查看所有角色:列出所有角色,使用 `SELECT * FROM dba_roles;` 9. 查看用户或角色拥有的角色:要查看用户或角色被赋予的其他角色,可以查询 `dba_role_privs`(全局)和 `user_role_privs`(当前用户),例如 `SELECT * FROM dba_role_privs;` 和 `SELECT * FROM user_role_privs;` 10. 查看具有sysdba或sysoper系统权限的用户:要找出具有管理员权限的用户,可以使用 `V$PWFILE_USERS` 视图,如 `SELECT * FROM V$PWFILE_USERS;` 对于数据库锁定进程的处理,当需要查看锁定信息时,可以使用以下查询: ```sql SELECT c.owner, c.object_name, c.object_type, b.sid, b.serial#, b.status, b.osuser, b.machine FROM v$locked_object a, v$session b, dba_objects c WHERE b.sid = a.session_id AND a.object_id = c.object_id; ``` 如果发现有锁定进程需要终止,可以使用 `ALTER SYSTEM KILL SESSION 'b.sid, b.serial#'` 来强制结束指定的会话,但请注意,这应谨慎操作,因为可能会导致未保存的数据丢失或事务中断。 通过这些查询,你可以全面了解Oracle数据库的连接状态、权限分配以及锁定情况,从而进行有效的数据库管理和问题排查。
1、查询oracle的连接数
select count(*) from v$session;
2、查询oracle的并发连接数
select count(*) from v$session where status='ACTIVE';
3、查看不同用户的连接数
select username,count(username) from v$session where username is not null group by username;
select username,machine,count(username) from v$session where username is not null group by username,machine;
4、查看所有用户:
select * from all_users;
5、查看用户或角色系统权限(直接赋值给用户或角色的系统权限):
select * from dba_sys_privs;
select * from user_sys_privs;
6、查看角色(只能查看登陆用户拥有的角色)所包含的权限
select * from role_sys_privs;
7、查看用户对象权限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
8、查看所有角色:
select * from dba_roles;
9、查看用户或角色所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs;
10、查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)
select * from V$PWFILE_USERS;
查看数据库锁定进程
select c.owner,c.object_name,c.object_type,b.sid,b.serial#,b.status,b.osuser,b.machine from v$locked_object a,v$session b,dba_objects c where b.sid = a.session_id and a.object_id = c.object_id;
杀掉锁定进程
下载后可阅读完整内容,剩余1页未读,立即下载
- 粉丝: 1
- 资源: 9
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全