[lang_en]Additional views for lock investigations[/lang_en][lang_ru]Дополнительные views для исследования блокировок[/lang_ru]

[lang_en]The lock analyses is one of important step in problem detection, also lock analyses can help to improve performance.

The standard views for analyses is: v$lock and v$session_wait

But Oracle Corp. suggest use additional views for more powerful and fast lock analyzes:

[/lang_en][lang_ru]

Анализ блокировок в базе это важный шаг в отладке приложения, также анализ блокировок может помочь увеличить производительность.

Стандартные views для анализа это: v$lock and v$session_wait

Но Oracle предлагает испрользовать дополнительные views для более быстрого и удобного исследования блокировок.

[/lang_ru]

dba_waiters — [lang_en]show all the sessions waiting for locks and the session that holds the lock.[/lang_en][lang_ru]список сессий ожидающих бллокировок и сессий что держат блокировки[/lang_ru]

image

dba_blockers — [lang_en]show all the sessions that have someone waiting on a lock they hold, but that are not themselves waiting on a lock. [/lang_en][lang_ru]список сессий которые «мешают» своими блокировками[/lang_ru]

image

dba_lock — [lang_en]has a row for each lock that is being held, and one row for each outstanding request for a lock or latch.[/lang_en][lang_ru]список все блокировок и запросов на блокировки[/lang_ru]

image

dba_kgllock — [lang_en]auxiliary view containing the KGL locks and pins.[/lang_en][lang_ru]вспомогательное представление, содержит KGL блокировки и

dba_lock_internal — [lang_en]internal (slow) view similar as dba_lock.[/lang_en][lang_ru]вспомогательное представление (медленное очень), примерно соответсвтует dba_lock[/lang_ru]

dba_dml_lock — [lang_en]has a row for each DML lock that is being held, and one row for each outstanding request for a DML lock. It is subset of dba_lock.[/lang_en][lang_ru]Подмножество dba_lock, содержит только DML блокировки и DML запросы на блокировки[/lang_ru]

dba_ddl_lock — [lang_en]has a row for each DDL lock that is being held, and one row for each outstanding request for a DDL lock. It is subset of dba_lock.[/lang_en][lang_ru]Подмножество dba_lock, содержит только DDL блокировки и DDL запросы на блокировки[/lang_ru]

[lang_en]The catblock.sql should be used for create such views. You can run it from sqlplus under sys account: @$ORACLE_HOME/rdbms/admin/catblock.sql

Documentation:[/lang_en]

[lang_ru]Создать это views можно с помощью скрипта catblock.sql, запускать под sys пользователем. @$ORACLE_HOME/rdbms/admin/catblock.sql

Документация:

[/lang_ru]

Oracle 9.2i

Oracle 10g

Oracle 11g see The Hang Manager utility

[/lang_en]