Oracle Probleme: Unterschied zwischen den Versionen
Schild (Diskussion | Beiträge) |
Schild (Diskussion | Beiträge) |
||
Zeile 4: | Zeile 4: | ||
STEP 1: To identify the SID for the table with the lock, you will use this system ID in a later query to get the serial number for the table row lock: | STEP 1: To identify the SID for the table with the lock, you will use this system ID in a later query to get the serial number for the table row lock: | ||
− | < | + | <pre> |
− | + | select | |
− | + | session_id | |
− | + | from | |
− | + | dba_dml_locks | |
− | + | where | |
− | + | name = 'b_auftrcol'; | |
− | + | </pre> | |
− | |||
Output : | Output : | ||
+ | <pre> | ||
SID | SID | ||
___ | ___ | ||
607 | 607 | ||
+ | |||
+ | </pre> | ||
Zeile 39: | Zeile 41: | ||
</pre> | </pre> | ||
Output : | Output : | ||
− | + | <pre> | |
SID SERIAL# | SID SERIAL# | ||
---- ------- | ---- ------- | ||
607 1402 | 607 1402 | ||
− | + | </pre> | |
==Session beenden, die die Zeile sperrt== | ==Session beenden, die die Zeile sperrt== | ||
STEP 3: Finally, we can use the "alter system" command to kill the session that is holding the table lock: | STEP 3: Finally, we can use the "alter system" command to kill the session that is holding the table lock: | ||
+ | <pre> | ||
alter system kill session 'SID,SERIALl#'; | alter system kill session 'SID,SERIALl#'; | ||
alter system kill session '607,1402'; | alter system kill session '607,1402'; | ||
+ | </pre> | ||
http://www.dba-oracle.com/t_remove_oracle_table_row_lock.htm | http://www.dba-oracle.com/t_remove_oracle_table_row_lock.htm | ||
Version vom 16. März 2018, 11:04 Uhr
Inhaltsverzeichnis
1 Gesperrte Tabellen entspereen
2 SID der gesperrten Tabelle ermitteln
STEP 1: To identify the SID for the table with the lock, you will use this system ID in a later query to get the serial number for the table row lock:
select session_id from dba_dml_locks where name = 'b_auftrcol';
Output :
SID ___ 607
3 ID der gesperrten Tabellenzeile ermitteln
STEP 2: The next step is a script to find the Serial# for the table row lock :
select sid, serial# from v$session where sid in ( select session_id from dba_dml_locks where name = 'EMP');
Output :
SID SERIAL# ---- ------- 607 1402
4 Session beenden, die die Zeile sperrt
STEP 3: Finally, we can use the "alter system" command to kill the session that is holding the table lock:
alter system kill session 'SID,SERIALl#'; alter system kill session '607,1402';
http://www.dba-oracle.com/t_remove_oracle_table_row_lock.htm
5 Gesperrte Tabellen entspereen
STEP 1: To identify the SID for the table with the lock, you will use this system ID in a later query to get the serial number for the table row lock:
select
session_id
from
dba_dml_locks
where
name = 'EMP';
Output :
SID ___ 607
STEP 2: The next step is a script to find the Serial# for the table row lock :
select
sid, serial#
from
v$session
where
sid in ( select session_id from dba_dml_locks where name = 'EMP');
Output :
SID SERIAL#
-------
607 1402
STEP 3: Finally, we can use the "alter system" command to kill the session that is holding the table lock:
alter system kill session 'SID,SERIALl#';
alter system kill session '607,1402';