資料庫伺服器負載突然暴增,連線程序爆滿,大量重複的大表查詢或者死鎖導致,重啟資料庫和應用無效,最好的方法是用命令停止查詢程序,並防止新的查詢進入啟動。
查詢所有程序
select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;
挑選需要刪除的程序 sid 和serial#
以下命令殺掉
alter system kill session '35, 27113';
35 sid
27113 serial#
批量處理的方式是,
select 'alter system kill session''' || sid || ',' || serial# || ''' immediate;'
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;
批量處理死鎖的命令
select 'alter system kill session''' || sid || ',' || serial# || ''' immediate;' from v$session t1,v$locked_object t2 where t1.sid = t2.session_id;
select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;
挑選需要刪除的程序 sid 和serial#
以下命令殺掉
alter system kill session '35, 27113';
35 sid
27113 serial#
批量處理的方式是,
select 'alter system kill session''' || sid || ',' || serial# || ''' immediate;'
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;
批量處理死鎖的命令
select 'alter system kill session''' || sid || ',' || serial# || ''' immediate;' from v$session t1,v$locked_object t2 where t1.sid = t2.session_id;
Oracle檢視連線數
有時候連得上資料庫,有時候又連不上.可能是資料庫上當前的連線數目已經超過了它能夠處理的最大值.select count from v process 當前的連線數 select value from v parameter where name processes 資料庫允許的最大連線數 修改最大連...
oracle的連線數
1 查詢oracle的連線數 select count from v session 2 查詢oracle的併發連線數 select count from v session where status active 3 檢視不同使用者的連線數 select username,count userna...
檢視Oracle連線數
size xx small oraclesqljdbc.做資料庫開發的時候,有時候會遇到連線超出最大限制的問題,這時候,我們需要檢視資料庫的連線數,下面說說如何檢視oracle的連線數 1.檢視oracle最大連線數 sql show parameter processes 最大連線數 2.修改最大...