首頁 >資料庫 >Oracle >oracle怎麼查詢會話數

oracle怎麼查詢會話數

WBOY
WBOY原創
2022-05-25 10:10:449015瀏覽

在oracle中,可以利用select語句來配合「v$session」來查詢資料庫的會話數量,在「v$session」檢視中包含了資料庫實例中的每一個會話記錄,語法為「select count (*) 從 v$session;」。

oracle怎麼查詢會話數

本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle怎麼查詢會話數

查看系統目前會話的連線數語法如下:

select count(*) from v$session;

oracle怎麼查詢會話數

##查看目前oracle 節點的活躍會話數:

oracle怎麼查詢會話數

oracle怎麼查詢會話數

#修改資料庫最大會話數:#

alter system set processes=500 scope=spfile  (在命令模式下执行)

查看目前資料庫最大會話上限:

show parameters processes;

查看目前資料庫DBLINK最多可開啟的連線數量:

show parameters open_links;

擴充知識:##會話( Session) 是通訊雙方從開始通訊到通訊結束期間的一個上下文(Context)。這個上下文是一段位於伺服器端的記憶體:記錄了本次連接的客戶端機器、透過哪個應用程式、哪個使用者登入等資訊.

我們可以透過oracle視圖v$session來查看目前資料庫中的所有會話訊息,其中該視圖有一列為status標誌會話狀態,oracle官方文檔對這一列定義如下

STATUS
VARCHAR2(8)
Status of the session:
ACTIVE - Session currently executing SQL
INACTIVE
KILLED - Session marked to be killed
CACHED - Session temporarily cached for use by Oracle*XA
SNIPED - Session inactive, waiting on the client

透過我們遇到的都是ACTIVE,INACTIVE,KILLED三種狀態

1、active 會話處於活動狀態,當前session正在執行sql語句

2、inactive會話處於不活動狀態,sql語句已經執行完畢,但是由於某種原因,會話和後台進程沒有釋放,透過我們在sqlplus中退出和類似plsql developer工具log out或直接退出,都是直接關閉會話,而不是將會話置於inactive狀態,下面以sqlplus指令為例

[oracle@oracle11g ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Thu May 23 23:09:30 2013
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select count(*) from v$process;
COUNT(*)
----------
30
SQL>

推薦教學:《

Oracle影片教學

#

以上是oracle怎麼查詢會話數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn