oracle如何查看链接,oracle查看数据库连接

如何查看oracle数据库远程连接

在oracle安装目录下的tnsnames.ora文件可以查看。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名、网页空间、营销软件、网站建设、印江网站维护、网站推广。

1、以oracle10g为例,路径为:

~oracle\product\10.2.0\db_1\network

2、打开tnsnames.ora文件。

3、以某条记录为例。

oracle如何查看当前有哪些用户连接到数据库

可直接在 v$session视图中查询。

语句如:

select * from v$session where username='用户名';

其中用户名应为英文大写字母。

以下为视图各字段说明:

SADDR - session address

SID - session identifier 常用于链接其他列

SERIAL# - SID有可能会重复,当两个session的SID重复时,SERIAL#用来区别session(说白了某个session是由sid和serial#这两个值确定的)

AUDSID - audit session id。可以通过audsid查询当前session的sid。select sid from v$session where audsid=userenv('sessionid');

PADDR - process address,关联v$process的addr字段,通过这个可以查询到进程对应的session

USER# - 同于dba_users中的user_id,Oracle内部进程user#为0.

USERNAME - session's username。等于dba_users中的username。Oracle内部进程的username为空。

COMMAND - session正在执行的sql id,1代表create table,3代表select。

TADDR - 当前的transaction address。可以用来关联v$transaction中的addr字段。

LOCKWAIT - 可以通过这个字段查询出当前正在等待的锁的相关信息。sid + lockwait与v$loc中的sid + kaddr相对应。

STATUS - 用来判断session状态。Active:正执行SQL语句。inactive:等待操作。killed:被标注为杀死。

SERVER - 服务类型。

SCHEMA# - schema user id。Oracle内部进程的schema#为0。

SCHEMANAME - schema username。Oracle内部进程的为sys。

OSUSER - 客户端操作系统用户名。

PROCESS - 客户端process id。

MACHINE - 客户端machine name。

TERMINAL - 客户端执行的terminal name。

PROGRAM - 客户端应用程序。比如ORACLE.EXE或sqlplus.exe

TYPE - session类型。

SQL_ADDRESS,SQL_HASH_VALUE,SQL_ID,SQL_CHILD_NUMBER - session正在执行的sql状态,和v$sql中的address,hash_value,sql_id,child_number对应。

PREV_SQL_ADDR,PREV_HASH_VALUE,PREV_SQL_ID,PREV_CHILD_NUMBER - 上一次执行的sql状态。

MODULE,MODULE_HASH,ACTION,ACTION_HASH,CLIENT_INFO - 应用通过DBMS_APPLICATION_INFO设置的一些信息。

FIXED_TABLE_SEQUENCE - 当session完成一个user call后就会增加的一个数值,也就是说,如果session挂起,它就不会增加。因此可以根据这个字段来监控某个时间点以来的session性能情况。例如,一个小时前某个session的此字段数值为10000,而现在是20000,则表明一个小时内其user call较频繁,可以重点关注此session的performance statistics。

ROW_WAIT_OBJ# - 被锁定行所在table的object_id。和dba_object中的object_id关联可以得到被锁定的table name。

ROW_WAIT_FILE# - 被锁定行所在的datafile id。和v$datafile中的file#关联可以得到datafile name。

ROW_WAIT_BLOCK# - 同上,对应块。

ROW_WAIT_ROW# - session当前正在等待的被锁定的行。

LOGON_TIME - session logon time.

如何查看Oracle数据库连接情况

在实际的工作中,数据库管理员(DBA)需要经常要定时对数据库的连接情况进行检查,查看与数据库建立的会话数目是不是正常,假如建立了过多的连接,会消耗许多数据库的资源。与此同时,针对一些“挂死”的连接,可能会需要DBA自行手工进行清理。 下面的SQL语句列出当前数据库建立的会话情况: select sid,serial#,username,program,machine,status from v$session; 输出的结果: SID SERIAL# USERNAME PROGRAM MACHINE STATUS ---- ------- ---------- ----------- --------------- -------- 1 1 ORACLE.EXE WORK3 ACTIVE 2 1 ORACLE.EXE WORK3 ACTIVE 3 1 ORACLE.EXE WORK3 ACTIVE 4 1 ORACLE.EXE WORK3 ACTIVE 5 3 ORACLE.EXE WORK3 ACTIVE 6 1 ORACLE.EXE WORK3 ACTIVE 7 1 ORACLE.EXE WORK3 ACTIVE 8 27 SYS SQLPLUS.EXE WORKGROUP\WORK3 ACTIVE 11 5 DBSNMP dbsnmp.exe WORKGROUP\WORK3 INACTIVE 其中SID 会话(session)的ID号; SERIAL# 会话的序列号,和SID一起用来唯一标识一个会话; USERNAME 建立该会话的用户名; STATUS 当前这个会话的状态,ACTIVE表示会话正在执行某些任务,INACTIVE表示当前会话没有执行任何操作; 假如要手工断开某个会话,则执行: alter system kill session 'SID,SERIAL#';注意:在上面的示例中,SID为1到7(USERNAME列为空)的会话,它是Oracle数据库的后台进程,请大家不要对这些会话进行任何操作。

怎样查看oracle当前的连接数

-- 当前的连接数

SQL select count(*) from v$session 

-- #并发连接数

SQL Select count(*) from v$session where status='ACTIVE'

--数据库允许的最大连接数

SQL select value from v$parameter where name = 'processes'

-- #最大连接

SQL show parameter processes 

-- #查看不同用户的连接数

SQL select username,count(username) from v$session where username is not null group by username;


网站栏目:oracle如何查看链接,oracle查看数据库连接
URL分享:http://pwwzsj.com/article/hooped.html