Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menanyakan kebuntuan dalam oracle

Bagaimana untuk menanyakan kebuntuan dalam oracle

WBOY
WBOYasal
2022-02-17 17:13:1832524semak imbas

Dalam Oracle, anda boleh menggunakan pengguna dba untuk melaksanakan penyataan "pilih nama pengguna, lockwait, status, mesin, program daripada v$session where sid in" untuk menanyakan jalan buntu kebuntuan akan dipaparkan.

Bagaimana untuk menanyakan kebuntuan dalam oracle

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Oracle 11g, komputer Dell G3.

Cara membuat pertanyaan kebuntuan dalam oracle

1. Semak kebuntuan

1) Gunakan pengguna dba untuk melaksanakan pernyataan berikut

select username,lockwait,status,machine,program from v$session where sid in
(select session_id from v$locked_object)

Jika ada adalah hasil keluaran, ini bermakna terdapat kebuntuan, dan anda boleh melihat mesin mana yang menjadi kebuntuan. Penerangan medan:

Nama pengguna: pengguna pangkalan data yang digunakan untuk pernyataan kebuntuan;

Status: Status, aktif bermakna buntu

Mesin: Mesin di mana pernyataan kebuntuan terletak.

Program: Daripada aplikasi manakah penyataan kebuntuan datang terutamanya

2) Gunakan pengguna dba untuk melaksanakan penyataan berikut untuk melihat penyataan kebuntuan.

2. Penyelesaian kepada kebuntuan
select sql_text from v$sql where hash_value in
(select sql_hash_value from v$session where sid in
(select session_id from v$locked_object))

1) Cari proses buntu:

2) Matikan proses buntu: ubah sistem kill session 'sid, serial#'; (di mana sid=l.session_id)
SELECT s.username,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#,
l.ORACLE_USERNAME,l.OS_USER_NAME,l.PROCESS
FROM V$LOCKED_OBJECT l,V$SESSION S WHERE l.SESSION_ID=S.SID;

3) Jika masih tidak dapat diselesaikan:

Ganti sid dengan sisi kebuntuan:
select pro.spid from v$session ses,
v$process pro
where
ses.sid=XX
and ses.paddr=pro.addr;

Disyorkan tutorial: "

Tutorial Video Oracle

"

Atas ialah kandungan terperinci Bagaimana untuk menanyakan kebuntuan dalam oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn