Hemos estado utilizando software de BI y una base de datos de repositorio que está instalada en Oracle Enterprise 11gR2.
Algunos de estos informes por lotes intentarán acceder a una tabla de base de datos que aún puede estar bloqueada. ¿Cómo puedo saber si una tabla de Oracle está bloqueada o no? ¿Hay alguna instrucción SQL que se muestre como detalles del historial para el análisis?
oracle-11g-r2
locking
business-intelligence
Selahattin
fuente
fuente
Respuestas:
La siguiente consulta proporciona detalles de todos los bloqueos.
fuente
El siguiente script se puede utilizar para identificar rápidamente todos los objetos de bloqueo dentro de su sistema Oracle.
Referencia: -Oracle Tips por Burleson Consulting http://www.dba-oracle.com/t_find_oracle_locked_objects.htm
fuente
Puede consultar los objetos actualmente bloqueados desde V $ LOCKED_OBJECT .
Sin embargo, no hay historial para los bloqueos, el registro de todos los bloqueos generaría una sobrecarga de rendimiento enorme y una gran cantidad de datos para almacenar.
Lo más cercano que tiene la base de datos es el historial de sesión activa V $ ACTIVE_SESSION_HISTORY , DBA_HIST_ACTIVE_SESS_HISTORY (si tiene la licencia adecuada para usarlo), donde puede ver sesiones de bloqueo, declaraciones y otra información, pero no tablas bloqueadas. De lo contrario, puede intentar consultar las vistas apropiadas y guardar los datos necesarios con su propio script personalizado.
fuente
Usando la consulta a continuación, puede encontrar bloqueos en la tabla.
Bloqueo de cerraduras
fuente
Si desea liberar el bloqueo del objeto bloqueado, elimine la sesión correspondiente.
fuente
Puede verificar el bloqueo de la tabla desde
v$lock
ydba_objects
ver. La consulta a continuación le dará los detalles del bloqueo.Consulta 2:
Puede usar la consulta a continuación que le dará más detalles. Bloqueo de mesa
fuente