The following articles mainly describe the solution to Oracle deadlock. If you are interested in the specific solution to Oracle deadlock, you can click the following article to view it. The following is a description of the specific solution. I hope it will help you in your future study.
1. Check which process is locked
Check the V $ DB_OBJECT_CACHE View:
SELECT * from v $ DB_OBJECT_CACHE where owner = 'user of the process' and locks! = '0 ';
2. query which SID is used to identify which SESSION.
Check the V $ ACCESS View:
SELECT * from v $ access where owner = 'user of the process' and name = 'process NAME just found ';
3. Identify SID and SERIAL #
Check the V $ SESSION View:
Select sid, SERIAL #, paddr from v $ session where sid = 'sid just found'
View V $ PROCESS:
Select spid from v $ process where addr = 'paddr just found ';
4. Kill processes
(1) first kill the Oracle process:
Alter system kill session 'sid, SERIAL #';
(2). You can use the CMD console to kill operating system processes:
ORAKILL database implements the SPID just found
Remember to write down the Oracle deadlock we have detected and Kill it one by one. If the Kill is not clean, the problem still cannot be solved.
The above content is a description of the solution to the Oracle deadlock, hoping to help you in this regard.