Oracle 레코드로 사용자 IP 주소를 연결하는 방법

우리는 모두 v$session에 클라이언트의 기계 이름이 기록되어 있다는 것을 알고 있지만 IP가 없다. 그러면 우리는 어떻게 v$session에도 IP의 정보를 기록하게 합니까?
1. 먼저, DBMS 활용SESSION Process Package 먼저 실행:
BEGIN
  DBMS_SESSION.set_identifier(SYS_CONTEXT('USERENV', 'IP_ADDRESS'));
END;
/

2. 실행 트리거
create or replace trigger on_logon_trigger
  after logon ondatabase
begin
  dbms_application_info.set_client_info(sys_context('userenv','ip_address'));
end;
/

 :           dba  

3. 그리고 관리자 사용자로pl/sql에 로그인하면oracle에 연결된 IP 정보를 볼 수 있습니다
    sql:
select username,
       program,
       machine,
       client_info,
       sys_context('userenv', 'ip_address') as ipadd
  from v$session s
 where username is not null
 order by username, program, machine;

전재 대상:https://blog.51cto.com/996665552/2321975

좋은 웹페이지 즐겨찾기