1,触发器内容如下

CREATE OR REPLACE TRIGGER"LOGON_DENIED_TO_ALERT"

AFTER servererror ON DATABASE

DECLARE

message  VARCHAR2(168);

ip        VARCHAR2(15);

v_os_user VARCHAR2(80);

v_module  VARCHAR2(50);

v_action  VARCHAR2(50);

v_pid    VARCHAR2(10);

v_sid    NUMBER;

v_program VARCHAR2(48);

BEGIN

IF(ora_is_servererror(1017)) THEN

-- get ip FOR remote connections :

IF upper(sys_context('userenv', 'network_protocol')) = 'TCP' THEN

ip := sys_context('userenv', 'ip_address');

END IF;

SELECT sid INTO v_sid FROM sys.v_$mystat WHERE rownum < 2;

SELECT p.spid, v.program

INTO v_pid, v_program

FROM v$process p, v$session v

WHERE p.addr = v.paddr

AND v.sid = v_sid;

v_os_user := sys_context('userenv', 'os_user');

dbms_application_info.read_module(v_module, v_action);

message := to_char(SYSDATE, 'YYYYMMDD HH24MISS') ||

' logon denied from ' || nvl(ip,'localhost') || ' ' ||

v_pid || ' ' || v_os_user || 'with ' || v_program || ' – ' ||

v_module || ' ' || v_action;

sys.dbms_system.ksdwrt(2, message);

ENDIF;

END;

2,执行报错信息:

Compilation errors for TRIGGERTIMDBA.LOGON_DENIED_TO_ALERT

Error: PL/SQL: ORA-00942: table or viewdoes not exist

Line: 20

Text: SELECT sid INTO v_sid FROMsys.v_$mystat WHERE rownum < 2;

Error: PL/SQL: SQL Statement ignored

Line: 20

Text: SELECT sid INTO v_sid FROMsys.v_$mystat WHERE rownum < 2;

Error: PL/SQL: ORA-00942: table or viewdoes not exist

Line: 23

Text: FROM v$process p, v$session v

Error: PL/SQL: SQL Statement ignored

Line: 21

Text: SELECT p.spid, v.program

Error: PLS-00201: identifier'SYS.DBMS_SYSTEM' must be declared

Line: 35

Text: sys.dbms_system.ksdwrt(2, message);

Error: PL/SQL: Statement ignored

Line: 35

Text: sys.dbms_system.ksdwrt(2, message);

解决办法

grant execute on sys.dbms_system to timdba;

3,再次执行还在报错:

Compilation errors for TRIGGER TIMDBA.LOGON_DENIED_TO_ALERT

Error: PL/SQL: ORA-00942: table or viewdoes not exist

Line: 20

Text: SELECT sid INTO v_sid FROMsys.v_$mystat WHERE rownum < 2;

Error: PL/SQL: SQL Statement ignored

Line: 20

Text: SELECT sid INTO v_sid FROMsys.v_$mystat WHERE rownum < 2;

Error: PL/SQL: ORA-00942: table or viewdoes not exist

Line: 23

Text: FROM v$process p, v$session v

Error: PL/SQL: SQL Statement ignored

Line: 21

Text: SELECT p.spid, v.program

解决办法:

grant select on sys.v_$mystat to timdba;

4,再次调试报错信息3

Compilation errors for TRIGGERTIMDBA.LOGON_DENIED_TO_ALERT

Error: PL/SQL: ORA-00942: table or viewdoes not exist

Line: 23

Text: FROM v$process p, v$session v

Error: PL/SQL: SQL Statement ignored

Line: 21

Text: SELECT p.spid, v.program

解决办法:

grant select on sys.v_$process to timdba;

grant select on sys.v_$session to timdba;

oracle触发器调试日志,Oracle 11g 触发器调试记录Error: PLS-00201: identifier'SYS.DBMS_SYSTEM' must be declared...相关推荐

  1. 浅谈Oracle服务器归档日志,oracle服务器运行时管理归档日志文件不管理联机重做日志文件...

    <Oracle数据库管理与维护实战>--2.4 Oracle后台进程结构 本节书摘来自异步社区出版社<Oracle数据库管理与维护实战>一书中的第2章,第2.4节,作者: 何伟 ...

  2. java servlet 调试日志 logger sae_java servlet 调试日志 lo

    java servlet 调试日志 lo [2021-02-10 08:32:08]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace( ...

  3. oracle实体视图日志,Oracle案例02——ORA-12034: SCOTT.USER_TABLE 上的实体化视图日志比上次刷新后的内容新...

    通过查看schedual job报错日志,具体报错信息如下 ORA-12034:"SCOTT"."USER_TABLE" 上的实体化视图日志比上次刷新后的内容新 ...

  4. oracle rac alter日志,ORACLE 11G RAC 增加日志组及增大日志文件

    1.查看目前日志组和日志文件情况 SQL> select * from v$logfile order by 1; GROUP# STATUS  TYPE    MEMBER           ...

  5. mysql 触发器 sql日志_sql update 触发器 可获得被update的行的信息

    SQL Server 2005 学习笔记之触发器简介[转] 触发器实际上就是一种特殊类型的存储过程,其特殊性表现在:它是在执行某些特定的T-SQL语句时自动的. 11.1 触发器简介 触发器实际上就是 ...

  6. oracle查看联机日志,oracle联机日志和归档日志

    联机日志文件又叫重做日志文件,记录了对数据库修改的信息,包括用户对数据修改和数据库管理员对数据库结构的修改,一个oracle实例有一组或多组联机日志,每组至少包含1个或者多个日志成员,这里要多个日志成 ...

  7. 删除oracle数据库归档日志,Oracle数据库--删除归档日志

    windows操作系统: 最好在删除日志的时候,做好相应的日志或者数据库备份. C:\Documents and Settings\admin>rman 恢复管理器: Release 10.2. ...

  8. oracle清理告警日志,Oracle 跟踪/告警/监听日志的清理脚本

    [root ~]# cat del_oracle_log.sh #!/bin/bash source /home/oracle/.bash_profile function audit_log() { ...

  9. oracle的awr日志,oracle 导出awr信息

    其内部是调用expdp来执行的,日志内容如下: 启动 "SYS"."SYS_EXPORT_TABLE_02": 正在使用 BLOCKS 方法进行估计... 处理 ...

最新文章

  1. android中有关invisible,visible,gone的区别
  2. html给img添加滤镜,给图片在博客中添加滤镜效果_CSS/HTML
  3. ELK Stack 日志分析 Elasticsearch搜索权限
  4. optee中的arm64的virt_to_phys的实现
  5. 从C++到Java --理解面向对象是关键所在
  6. uCOS中任务调度时的上下文切换
  7. 问题之JS中传递数值过大或前置有零时
  8. JQuery-Dialog(弹出窗口,遮蔽窗口)
  9. 《跟我一起写Makefile》读书笔记(3)
  10. python知识点总结一
  11. 亲测!Jquery2.0不支持IE8-了
  12. 编程语言中的常量折叠(const folding)
  13. 常见前端面试题及答案(下)
  14. 可测函数列的几乎一致收敛于几乎处处收敛
  15. chromecast投屏_Google的初代投屏神器Chromecast上手体验
  16. wmp流代理服务器设置为空,03服务器安装wmp10的方法
  17. 安卓手机使用Termux软件进行Linux系统的安装
  18. uclinux系统简介
  19. Object类型转换为Integer类型
  20. 学习笔记(5):第01章-互联网的概述(历史发展+技术发展+常见应用)-互联网的接入(手把手教你调试ADSL宽带技术)

热门文章

  1. 【献血小常识】------- 献血者健康检查标准
  2. 小米手机开发者选项打开usb安装需要SIM卡解决办法
  3. Julia Pro 1.0 下载安装教程
  4. 手机远程管理服务器文件,手机远程控制服务器文件
  5. Android 贪食蛇
  6. 屠杀熊猫烧香方法记录
  7. CentOS/使用RPM管理包
  8. 删除Karabiner-Elements 和 Karabiner-EventViewer提示项目被锁定
  9. OpenStack 企业私有云的若干需求(7):电信行业解决方案 NFV
  10. ios中html怎么横屏,苹果xsmax页面怎么横屏