国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

找到并終止Oracle9i里被鎖定的會話

2024-08-29 13:37:52
字體:
來源:轉載
供稿:網友

  由于Oracle有內部鎖定(的機制),因此有些時候它對于找到并終止Oracle里鎖定數據庫資源的會話很有用。首先,你需要找到所有的Oracle會話。下面是一段腳本,用來顯示Oracle內所有會話的細節。 
  
  remsession.sql - displays all connected sessions
  set echo off;
  set termout on;
  set linesize 80;
  set pagesize 60;
  set newpage 0;
  
  select
  rpad(c.name':',11)rpad(' current logons='
  (to_number(b.sessions_current)),20)'cumulative logons='
  rpad(substr(a.value,1,10),10)'highwater mark='
  b.sessions_highwater Information
  from
  v$sysstat a,
  v$license b,
  v$database c
  where
  a.name = 'logons cumulative'
  ;
  
  ttitle "dbnameDatabaseUNIX/Oracle Sessions";
  
  set heading off;
  select 'Sessions on database 'substr(name,1,8) from v$database;
  set heading on;
  select
  substr(a.spid,1,9) pid,
  substr(b.sid,1,5) sid,
  substr(b.serial#,1,5) ser#,
  substr(b.machine,1,6) box,
  substr(b.username,1,10) username,
  substr(b.osuser,1,8) os_user,
  substr(b.PRogram,1,30) program
  from
  v$session b,
  v$process a
  where
  b.paddr = a.addr
  and
  type='USER'
  order by
  spid;
  ttitle off;
  set heading off;
  select 'To kill, enter SQLPLUS> ALTER SYSTEM KILL SESSION',
  '''''SID, SER#'''''';' from dual;
  spool off;
   找到并終止Oracle9i里被鎖定的會話(圖一)
  一旦我們找到了Oracle里所有的會話,那么下一步就是運行一個腳本來檢測所有已經被鎖定的會話。這是因為,Oracle可能無法以足夠快的速度檢測到一個不活動(dead)的會話,用以防止對數據訪問的阻斷(blockage)。你可以運行下面的腳本以定位那些管制著鎖定資源的會話。
  
  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 = s.sid;
  找到并終止Oracle9i里被鎖定的會話(圖二)
  一旦定位了已鎖定的會話,你就可以使用下面的腳本來自動地創建ALTER SESSION句法,用來終止你所希望終止的會話,這樣就能夠將鎖定的會話從Oracle里清除掉。
  
  spoolrun_nuke.sql
  
  select
  'alter system kill session '''
  sess.sid', 'sess.serial#';'
  from
  v$locked_object lo,
  dba_objects   ao,
  v$session    sess
  where
  ao.object_id = lo.object_id
  and
  lo.session_id = s.sid;
  
  在創建完run_nuke.sql文件之后,你就可以迅速地選擇那些要被終止的會話并單獨地運行它們。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 泾川县| 龙胜| 石楼县| 德昌县| 隆昌县| 红桥区| 茂名市| 东港市| 高唐县| 霍林郭勒市| 贵溪市| 交口县| 左云县| 宁海县| 磐石市| 南宫市| 长汀县| 绍兴市| 郑州市| 交口县| 萨迦县| 天等县| 万载县| 绥滨县| 隆林| 扶余县| 咸阳市| 永登县| 姜堰市| 云浮市| 青州市| 正蓝旗| 宜丰县| 和硕县| 海城市| 明星| 枞阳县| 句容市| 文登市| 宁晋县| 新建县|