SELECT ANY TABLE 시스템 권한이 있는 User라면
(DBA라면 당연히 그렇겠지만), V$SQLTEXT라는 View를 통해서
현재 shared pool에 있는 SQL문을 모두 조회할 수 있습니다.
shared pool에는 DBMS를 startup한 이후의 모든 SQL문이 보관되는
것은 아니고, pool size가 허용하는 만큼의 최근에 사용된 SQL만이
보관됩니다. 따라서, 사용한 지 오래되는 SQL은 제거될 수도 있습니다.
SELECT hash_value, piece, sql_text
FROM V$SQLTEXT
ORDER BY hash_value, piece;
이렇게 하면 모든 SQL문을 볼 수가 있구요.
V$SESSION이라는 View의 SQL_HASH_VALUE column과
V$SQLTEXT.HASH_VALUE 를 join하면 해당 SQL의 세션정보를
얻을 수도 있습니다.
'oracle' 카테고리의 다른 글
view (0) | 2016.09.30 |
---|---|
synonym (0) | 2016.09.30 |
integer vs number (0) | 2016.06.30 |
merge into (0) | 2015.07.03 |
오라클 translate (0) | 2015.03.02 |