DBA應(yīng)當(dāng)如何查看Oracle數(shù)據(jù)庫連接情況
下面的SQL語句列出當(dāng)前數(shù)據(jù)庫建立的會話情況:
select sid,serial#,username,program,machine,status
from v$session;
輸出的結(jié)果:
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 WORKGROUPWORK3 ACTIVE
11 5 DBSNMP dbsnmp.exe WORKGROUPWORK3 INACTIVE
其中SID 會話(session)的ID號;
SERIAL# 會話的序列號,和SID一起用來唯一標(biāo)識一個會話;
USERNAME 建立該會話的用戶名;
PROGRAM 這個會話是用什么工具連接到數(shù)據(jù)庫的;
STATUS 當(dāng)前這個會話的狀態(tài),ACTIVE表示會話正在執(zhí)行某些任務(wù),INACTIVE表示當(dāng)前會話沒有執(zhí)行任何操作;
假如DBA要手工斷開某個會話,則執(zhí)行:
alter system kill session 'SID,SERIAL#';
注意:
在上面的示例中,SID為1到7(USERNAME列為空)的會話,它是Oracle數(shù)據(jù)庫的后臺進(jìn)程,請大家不要對這些會話進(jìn)行任何操作。
