SELECT username, program, status, COUNT(1)
FROM v$session
GROUP BY username, program, status
ORDER BY COUNT(1) DESC;
查看oracle連接數(oracle常用命令)
作爲DBA需要對oracle的連接情況和內存使用情況瞭如指掌,不能等出問題的時候再去排除問題,平時也需要做好監控。下面分享下怎麼通過sql去查看oracle的連接情況和內存使用情況。
1、查看連接oracle的所有機器的連接數select machine,count(*) from v$session group by machine;
2、查看連接oracle的所有機器的連接數和狀態select machine,status,count(*)from v$sessiongroup by machine,statusorder by status;
3、oracle的PGA、SGA和process countselect ‘SGA’ AS NAME,ROUND(sum(value)/1024/1024,2)||’M’ AS “SIZE(M)” from v$sga;
select ‘PGA’ AS NAME,ROUND(value/1024/1024,2)||’M’ AS “SIZE(M)” from v$pgastatwhere name=’total PGA allocated’;
select ‘TOTAL’ AS NAME,((SELECt ROUND(sum(value)/1024/1024,2)from v$sga)+(select ROUND(value/1024/1024,2)from v$pgastatwhere name=’total PGA allocated’))||’M’ AS “SIZE(M)” FROM DUAL;
SELECt NAME,TO_CHAr(VALUE)FROM V$PGASTATWHERe NAME=’process count’;
4、查看oracle進程消耗的內存SELECt * FROM V$PROCESS_MEMORY;
5、查看oracle進程的使用SELECt PROGRAM, PGA_USED_MEM, PGA_ALLOC_MEM, PGA_FREEABLE_MEM, PGA_MAX_MEM FROM V$PROCESS;