查看oracle數據庫允許的最大連接數和當前連接數


在查看數據的連接情況很有用,寫完程序一邊測試代碼一邊查看數據庫連接的釋放情況有助於分析優化出一個健壯的系統程序來。

1、查看當前的數據庫連接數

 select count(*) from v$process ;    --當前的數據庫連接數

2、數據庫允許的最大連接數

 select value from v$parameter where name ='processes';  --數據庫允許的最大連接數

3、修改數據庫最大連接數
 alter system set processes = 300 scope = spfile;  --修改最大連接數:

4、關閉/重啟數據庫
 shutdown immediate; --關閉數據庫
 startup; --重啟數據庫

5、查看當前有哪些用戶正在使用數據

select osuser, a.username, cpu_time/executions/1000000||'s', b.sql_text, machine
from v$session a, v$sqlarea b
where a.sql_address =b.address 
order by cpu_time/executions desc;  --查看當前有哪些用戶正在使用數據

6、 --當前的session連接數

select count(*) from v$session  --當前的session連接數

7、當前並發連接數

 select count(*) from v$session where status='ACTIVE'; --並發連接數

v$process:

這個視圖提供的信息,都是oracle服務進程的信息,沒有客戶端程序相關的信息
服務進程分兩類,一是后台的,一是dedicate/shared server
pid, serial#     這是oracle分配的PID
spid             這才是操作系統的pid
program          這是服務進程對應的操作系統進程名


v$session:

這個視圖主要提供的是一個數據庫connect的信息,
主要是client端的信息,比如以下字段:
machine   在哪台機器上
terminal  使用什么終端
osuser    操作系統用戶是誰
program   通過什么客戶端程序,比如TOAD
process   操作系統分配給TOAD的進程號
logon_time  在什么時間
username    以什么oracle的帳號登錄
command     執行了什么類型的SQL命令
sql_hash_value  SQL語句信息

有一些是server端的信息:
paddr   即v$process中的server進程的addr
server  服務器是dedicate/shared


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM