查看oracle數(shù)據(jù)庫(kù)的連接數(shù)以及用戶(hù)
1 、查詢(xún)oracle的連接數(shù) select count ( * ) from v$session; 2 、查詢(xún)oracle的并發(fā)連接數(shù) select count ( * ) from v$session where status = ' ACTIVE ' ; 3 、查看不同用戶(hù)的連接數(shù) select username, count (username) from v$session where username is not null group by username; 4 、查看所有用戶(hù): select * from all_users; 5 、查看用戶(hù)或角色系統(tǒng)權(quán)限(直接賦值給用戶(hù)或角色的系統(tǒng)權(quán)限): select * from dba_sys_privs; select * from user_sys_privs; 6 、查看角色(只能查看登陸用戶(hù)擁有的角色)所包含的權(quán)限 select * from role_sys_privs; 7 、查看用戶(hù)對(duì)象權(quán)限: select * from dba_tab_privs; select * from all_tab_privs; select * from user_tab_privs; 8 、查看所有角色: select * from dba_roles; 9 、查看用戶(hù)或角色所擁有的角色: select * from dba_role_privs; select * from user_role_privs; 10 、查看哪些用戶(hù)有sysdba或sysoper系統(tǒng)權(quán)限(查詢(xún)時(shí)需要相應(yīng)權(quán)限) select * from V$PWFILE_USERS;
?
?
select count(*) from v$process --當(dāng)前的連接數(shù)
select value from v$parameter where name = 'processes' --數(shù)據(jù)庫(kù)允許的最大連接數(shù)
修改最大連接數(shù):
alter system set processes = 300 scope = spfile;
重啟數(shù)據(jù)庫(kù):
shutdown immediate;
startup;
--查看當(dāng)前有哪些用戶(hù)正在使用數(shù)據(jù)
SELECT osuser, a.username,cpu_time/executions/1000000||'s', sql_fulltext,machine
from v$session a, v$sqlarea b
where a.sql_address =b.address order by cpu_time/executions desc;
select count(*) from v$session #連接數(shù)
select count(*) from v$session where status='ACTIVE' #并發(fā)連接數(shù)
show parameter processes #最大連接
alter system set processes = value scope = spfile;重啟數(shù)據(jù)庫(kù) #修改連接
?
SQL> Select count(*) from v$session where status='ACTIVE' ;
COUNT(*)
----------
20
SQL> Select count(*) from v$session;
COUNT(*)
----------
187
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ----------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 450
SQL>
并發(fā)指active,I SEE
SQL> select count(*) from v$session #連接數(shù)
SQL> Select count(*) from v$session where status='ACTIVE' #并發(fā)連接數(shù)
SQL> show parameter processes #最大連接
SQL> alter system set processes = value scope = spfile;重啟數(shù)據(jù)庫(kù) #修改連接
unix 1個(gè)用戶(hù)session 對(duì)應(yīng)一個(gè)操作系統(tǒng) process
而 windows體現(xiàn)在線(xiàn)程
DBA要定時(shí)對(duì)數(shù)據(jù)庫(kù)的連接情況進(jìn)行檢查,看與數(shù)據(jù)庫(kù)建立的會(huì)話(huà)數(shù)目是不是正常,如果建立了過(guò)多的連接,會(huì)消耗數(shù)據(jù)庫(kù)的資源。同時(shí),對(duì)一些“掛死”的連接,可能會(huì)需要DBA手工進(jìn)行清理。
以下的SQL語(yǔ)句列出當(dāng)前數(shù)據(jù)庫(kù)建立的會(huì)話(huà)情況:
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 WORKGROUP\\WORK3 ACTIVE
11 5 DBSNMP dbsnmp.exe WORKGROUP\\WORK3 INACTIVE
其中,
SID 會(huì)話(huà)(session)的ID號(hào);
SERIAL# 會(huì)話(huà)的序列號(hào),和SID一起用來(lái)唯一標(biāo)識(shí)一個(gè)會(huì)話(huà);
USERNAME 建立該會(huì)話(huà)的用戶(hù)名;
PROGRAM 這個(gè)會(huì)話(huà)是用什么工具連接到數(shù)據(jù)庫(kù)的;
STATUS 當(dāng)前這個(gè)會(huì)話(huà)的狀態(tài),ACTIVE表示會(huì)話(huà)正在執(zhí)行某些任務(wù),INACTIVE表示當(dāng)前會(huì)話(huà)沒(méi)有執(zhí)行任何操作;
如果DBA要手工斷開(kāi)某個(gè)會(huì)話(huà),則執(zhí)行:
alter system kill session \'SID,SERIAL#\'
SELECT username, machine, program, status, COUNT (machine) AS
連接數(shù)量
FROM v$session
GROUP BY username, machine, program, status
ORDER BY machine;
顯示結(jié)果(每個(gè)人的機(jī)器上會(huì)不同)
SCHNEIDER|WORKGROUD\WANGZHENG|TOAD.exe|ACTIVE|1
SCHNEIDER|WORKGROUP\597728AA514F49D|sqlplusw.exe|INACTIVE|1
|WWW-Q6ZMR2OIU9V|ORACLE.EXE|ACTIVE|8
PUBLIC|||INACTIVE|0
as?
select?*?from?informationlaw?as?of?TIMESTAMP?to_timestamp('20121126?103435','yyyymmdd?hh24miss');
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
