oracle数据库连接配置文件_oracle数据库连接数查看命令

更新时间:2018-07-24    来源:Oracle教程    手机版     字体:

【www.bbyears.com--Oracle教程】

oracle数据库有时会出现客户端连接间歇性失败,报类似如下错误:

ORA-12519, TNS:no appropriate service handler found

可能是数据库上当前的连接数目已经超过了它能够处理的最大值。

 查看数据库允许的最大连接数:

 代码如下

select value from v$parameter where name = "processes"; 

show parameter processes;

 

查看当前的连接数:

 代码如下

 select count(*) from v$process;

v$process视图包含当前系统oracle运行的所有进程信息。常被用于将oracle或服务进程的操作系统进程ID与数据库session之间建立联系。

 
修改最大连接数:

 代码如下

alter system set processes = 300 scope = spfile;

 
重启数据库:

 代码如下

shutdown immediate; 

startup;

 

查看当前有哪些用户正在使用数据:

 代码如下

 SELECT osuser,a.username,cpu_time/executions/1000000||"s",sql_fulltext,machine 

from v$session a, v$sqlarea b 

where a.sql_address =b.address order by cpu_time/executions desc;

 

查询数据库自启动以来最大的并发数量(sessions_highwater 记录的是数据库会话曾经达到的最大值):

 代码如下

 select * from v$license


查看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;

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;

 

修改数据库允许的最大连接数:

 代码如下

alter system set processes = 300 scope = spfile;

 

查看游标数量

 代码如下

Select * from v$open_cursor Where user_name=""

 

查询数据库允许的最大连接数:

 代码如下 select value from v$parameter where name = "processes";
或者:show parameter processes;

 

查询数据库允许的最大游标数:

 代码如下

select value from v$parameter where name = "open_cursors"

 

查看oracle版本

 代码如下

select banner from sys.v_$version;


按降序显示用户"SYSTEM"为每个会话打开的游标数

 代码如下

select o.sid, osuser, machine, count(*) num_curs  from v$open_cursor o, v$session s  where user_name = "SYSTEM" and o.sid=s.sid   group by o.sid, osuser, machine  order by num_curs desc;

本文来源:http://www.bbyears.com/shujuku/43101.html