sqlplus連線數的測試

jeanron100發表於2013-11-08
最近測試庫上會有很多的連線的問題,很多都是jdbc連線的問題,在此基礎上我測試了一下sqlplus連線的情況,
根據sqlplus的命令,有conn,disc,disc會斷開連線。
我想如果不停的conn 而不disc,連線數會不會爆。
按照這個思路寫了下列的指令碼,大體如下。

sqlplus TEST1/TEST1@test < select sid,serial#, count(*)from v\$session where username='TEST1' group by sid,serial#;
select count(*)from v\$session;
conn TESTO1/TESTO1@test
select sid,serial#, count(*)from v\$session where username='TESTO1' group by sid,serial#;
select count(*)from v\$session;


conn TEST1/TEST1@test
select sid,serial#, count(*)from v\$session where username='TEST1' group by sid,serial#;
select count(*)from v\$session;
conn TESTO1/TESTO1@test
select sid,serial#, count(*)from v\$session where username='TESTO1' group by sid,serial#;
select count(*)from v\$session;
......
可以複製很多如上的部分。

但是測試發現,session書依然沒有變化。好像是自動關閉了一樣。
把間隔時間加大,加入sleep,
sqlplus TEST1/TEST1@test < select sid,serial#, count(*)from v\$session where username='TEST1' group by sid,serial#;
select count(*)from v\$session;
!sleep 2
conn TESTO1/TESTO1@test
select sid,serial#, count(*)from v\$session where username='TESTO1' group by sid,serial#;
select count(*)from v\$session;
!sleep 2
!sleep 5


conn TEST1/TEST1@test
select sid,serial#, count(*)from v\$session where username='TEST1' group by sid,serial#;
select count(*)from v\$session;
!sleep 2
conn TESTO1/TESTO1@test
select sid,serial#, count(*)from v\$session where username='TESTO1' group by sid,serial#;
select count(*)from v\$session;
!sleep 2
!sleep 5
.....

結果如下所示,sid對應的serial#會不停的增長。但是上一個session會自動斷掉。session總數也不變,看來sqlplus會自動disc。看來效能很好。
SQL> Connected.
SQL> 
       SID    SERIAL#   COUNT(*)
---------- ---------- ----------
      2941       9786          1
      2955      51931          1
SQL> 
  COUNT(*)
----------
        44
SQL> 
SQL> Connected.
SQL> 
       SID    SERIAL#   COUNT(*)
---------- ---------- ----------
      2955      51933          1
SQL> 
  COUNT(*)
----------
        44
SQL> 
SQL> 
SQL> SQL> Connected.
SQL> 
       SID    SERIAL#   COUNT(*)
---------- ---------- ----------
      2941       9786          1
      2955      51935          1
SQL> 
  COUNT(*)
----------
        44
SQL> 
SQL> Connected.
SQL> 
       SID    SERIAL#   COUNT(*)
---------- ---------- ----------
      2955      51937          1
SQL> 
  COUNT(*)
----------
        44

SQL> 
SQL> 
SQL> SQL> Connected.
SQL> 
       SID    SERIAL#   COUNT(*)
---------- ---------- ----------
      2941       9786          1
      2955      51939          1
SQL> 
  COUNT(*)
----------
        44
SQL> 
SQL> Connected.
SQL> 
       SID    SERIAL#   COUNT(*)
---------- ---------- ----------
      2955      51941          1

SQL> 
  COUNT(*)
----------
        44






來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23718752/viewspace-776087/,如需轉載,請註明出處,否則將追究法律責任。

相關文章