最近测试库上会有很多的连接的问题,很多都是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/,如需转载,请注明出处,否则将追究法律责任。