oracle表 儲存過程解鎖方法,誤刪資料找回方法

2021-07-15 23:31:12 字數 1600 閱讀 2952

oracle儲存過程被鎖,解決方法。

1.檢視是哪乙個儲存過程被鎖住

查v$db_object_cache檢視

select

* from v$db_object_cache

where owner=

'過程的所屬使用者'

and locks!=

'0'

2.檢視是哪乙個sid,通過sid可以知道是哪乙個session

查v$access檢視

select * from v$access where owner='過程的所屬使用者'

and name='剛才查到的過程名'

3.查出sid和serial#

查 v$session 檢視

select sid,serial#,paddr from v$session

where sid='剛才查到的sid';

查v$process檢視

select sid,serial#,paddr from v$session

where sid='剛才查到的sid';

查v$process檢視

select spid from v$process where addr='剛才查到的paddr';

4.殺程序

4.1先殺oracle程序

alter system kill session 『查出的sid,查出的serial#』;

4.2再殺作業系統程序

如果是unix

kill -9 剛查出的spid

如果是windows

orakill 剛查出的sid 剛查出的spid

oracle表被鎖,解決方法。

select object_name,machine,s.sid,s.serial#  from v$locked_object l,dba_objects o ,v$session s

where l.object_id = o.object_id and l.session_id=s.sid;

解鎖命令:

alter system kill session

'1160,34425';

--(其中165 ,14117 分別是上面查詢出的sid,serial#)

誤刪資料庫中的表如何找回

select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin;

flashback table "bin$mhdy0qa/tbjguxunawrbna==$0" to before drop rename to d_indexcoderela_0505;

檢視表某個時刻的資料

select * from dm.f_channelkpi as

oftimestamp to_timestamp('20160430 10:00:00','yyyymmdd hh24:mi:ss');

ORACLE 儲存過程被鎖 解鎖方法

一些oracle中的程序被殺掉後,狀態被置為 killed 但是鎖定的資源很長時間不釋放,有時實在沒辦法,只好重啟 資料庫。現在提供一種方法解決這種問題,那就是在oracle中殺不掉的,在os一級再殺。1.下面的語句用來查詢哪些物件被鎖 select object name,machine,s.si...

儲存過程解鎖

1.檢視是哪乙個過程被鎖住 查v db object cache檢視 select from v db object cache where owner 過程的所屬使用者 and locks 0 2.檢視是哪乙個sid,通過sid可以知道是哪乙個session 查v access檢視 select ...

oracle鎖表與解鎖表方法

以下幾個為主要相關表 select from v lock select from v sqlarea select from v session select from v process select from v locked object select from all objects se...