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