Oracleで、クライアント接続IP情報を参照するにはDBMSSESSIONパッケージ

//bjbsair.com/2020-03-27/tech-info/7042/:元-httpを参照してください。ありがとうござい
概要

それはあなたがclinet IPを記録したい場合は、それを達成するためにどのようにする必要があり、クライアント・マシンの名前に記録されている五$セッションではよく知られているが、いないIP?

 select username,machine,terminal,program,client_info,logon_time from v$session;

Oracleで、クライアント接続IP情報を参照するに基づきDBMS_SESSIONパッケージ

私たちは、IPのレコードがない見ることができます。


1、プロセスDBMS_SESSIONパッケージを使用。

BEGIN   
  DBMS_SESSION.set_identifier(SYS_CONTEXT('USERENV', 'IP_ADDRESS'));   
END;

Oracleで、クライアント接続IP情報を参照するに基づきDBMS_SESSIONパッケージ


図2に示すように、フリップフロップによって

create or replace trigger on_logon_trigger   
after logon on database   
begin   
    dbms_application_info.set_client_info(sys_context( 'userenv', 'ip_address' ) );   
end;

Oracleで、クライアント接続IP情報を参照するに基づきDBMS_SESSIONパッケージ


3、試験

クライアントはCLIENT_INFO列の五$セッションに上陸したときに、それらに対応するIP情報を記録します。

 select username,machine,terminal,program,client_info,logon_time from v$session order by logon_time desc;

Oracleで、クライアント接続IP情報を参照するに基づきDBMS_SESSIONパッケージ

オリジナルの記事は、0を発表 ウォンの賞賛0 ビュー270

おすすめ

転載: blog.csdn.net/zxjoke/article/details/105139754