请选择 进入手机版 | 继续访问电脑版

ORACLE SOS

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1929|回复: 0

触发器找出来密码错误信息

[复制链接]

95

主题

266

帖子

1695

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1695
发表于 2018-7-12 12:17:44 | 显示全部楼层 |阅读模式
  1. create or replace trigger logon_denied_to_alert
  2. after servererror on database
  3. declare
  4.   message   varchar2(120);
  5.   IP        varchar2(15);
  6.   v_os_user varchar2(80);
  7.   v_module  varchar2(50);
  8.   v_action  varchar2(50);
  9.   v_pid     varchar2(10);
  10.   v_sid     number;
  11. begin
  12.   IF (ora_is_servererror(1017)) THEN
  13.     if sys_context('userenv', 'network_protocol') = 'tcp' then
  14.       IP := sys_context('userenv', 'ip_address');
  15.     else
  16.       select distinct sid into v_sid from sys.v_$mystat;
  17.       SELECT p.SPID
  18.         into v_pid
  19.         FROM V$PROCESS p, V$SESSION v
  20.        WHERE p.ADDR = v.PADDR
  21.          AND v.sid = v_sid;
  22.     end if;
  23.     v_os_user := sys_context('userenv', 'os_user');
  24.     dbms_application_info.READ_MODULE(v_module, v_action);
  25.     message := to_char(sysdate, 'Dy Mon dd HH24:MI:SS YYYY') ||
  26.                ' logon denied from ' || nvl(IP, v_pid) || ' ' || v_os_user ||
  27.                ' with ' || v_module || ' ' || v_action;
  28.     sys.dbms_system.ksdwrt(2, message);
  29.   end if;
  30. end;
  31. /
复制代码



Q Q:107644445
Tel:13429648788
Email:dba@xifenfei.com
个人Blog(惜分飞)
提供专业ORACLE技术支持(数据恢复,安装实施,升级迁移,备份容灾,故障诊断,系统优化等)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|ORACLE SOS 技术论坛

GMT+8, 2021-9-26 20:07 , Processed in 0.014697 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表