查看oracle连接数的消耗情况
生活随笔
收集整理的這篇文章主要介紹了
查看oracle连接数的消耗情况
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
前言
- oracle 12c
- linux 7.0
- PL/SQL 11.0.2
- oracle中的連接數(shù)量是有限的。如果有程序一直消耗連接數(shù)量,則連接數(shù)量就會(huì)耗盡。
數(shù)據(jù)庫(kù)允許的最大連接數(shù)
select value from v$parameter where name ='processes';查看當(dāng)前的數(shù)據(jù)庫(kù)連接數(shù)
select count(*) from v$process ;查看連接消耗情況
默認(rèn)情況下,oracle記錄了機(jī)器名(hostname),而沒(méi)有記錄ip。所以,只能知道每個(gè)機(jī)器消耗了多少連接(弊端:如果hostname重名時(shí),視作一臺(tái)機(jī)器)。
查詢:客戶端設(shè)備標(biāo)識(shí)、客戶端程序、oracle用戶名、消耗的連接數(shù)量
select b.MACHINE, b.PROGRAM, b.USERNAME, count(*) from v$process a, v$session b where a.ADDR = b.PADDR and b.USERNAME is not null group by b.MACHINE, b.PROGRAM, b.USERNAME order by count(*) desc執(zhí)行上面查詢,得到如下結(jié)果:
| 1 | MACHINE NAME 1 | JDBC Thin Client | USERNAME1 | 904 |
| 2 | MACHINE NAME 1 | JDBC Thin Client | USERNAME2 | 60 |
| 3 | MACHINE NAME 1 | JDBC Thin Client | USERNAME3 | 55 |
| 4 | CentOS7-Oracle | oracle@CentOS7-Oracle | USERNAME1 | 18 |
| 5 | MACHINE NAME 2 | JDBC Thin Client | USERNAME4 | 10 |
| 8 | WORKGROUP\DESKTOP-59RQDEQ | plsqldev.exe | USERNAME1 | 4 |
| 9 | WorkGroup\ADMINI | plsqldev.exe | USERNAME1 | 4 |
| 11 | MACHINE NAME 3 | oraagent.bin@jsfwdb1 (TNS V1-V3) | USERNAME5 | 2 |
- MACHINE列:機(jī)器名。windows,計(jì)算機(jī)名。linux,hostname。
- PROGRAM列:程序名。JDBC Thin Client是oracle jdbc驅(qū)動(dòng)。plsqldev.exe是PL/SQL。
- USERNAME列:oracle用戶名。jdbc程序連接時(shí)使用的oracle用戶名。
其它
- 每臺(tái)設(shè)備的名稱必須唯一,否則,無(wú)法確切的知道連接來(lái)自哪臺(tái)設(shè)備。
- 盡量為每個(gè)應(yīng)用提供一個(gè)賬戶名(酌情處理,賬戶名多了,也是不好維護(hù)的)。同一臺(tái)設(shè)備上,有多個(gè)應(yīng)用時(shí),可以通過(guò)帳戶名區(qū)分。
- oracle默認(rèn)沒(méi)有在session中記錄ip。但是可以通過(guò)trigger將ip記錄到session中。具體方法網(wǎng)上搜索。
總結(jié)
以上是生活随笔為你收集整理的查看oracle连接数的消耗情况的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: S13世界赛半决赛前瞻:丞相JDG能否擒
- 下一篇: 在Oracle中查看客户端连接的IP信息