oracle监控DDL语句
来源:互联网 发布:淘宝手淘旺信是什么 编辑:程序博客网 时间:2024/05/08 17:08
就是一个未做任何归档备份的9i数据库老是被出现一个表被莫名drop,并在回收站不留任何痕迹,最后只得创建触发器的方法,来跟踪运行这个操作的时间和主机信息,问题予以解决,记录在此:
-- Create table
create table T_WCDMA_AUDIT_DDL
(
DDL_TIME VARCHAR2(30),
SESSION_ID NUMBER,
OS_USER VARCHAR2(200),
IP_ADDRESS VARCHAR2(200),
TERMINAL VARCHAR2(200),
HOST VARCHAR2(200),
USER_NAME VARCHAR2(30),
DDL_TYPE VARCHAR2(30),
OBJECT_TYPE VARCHAR2(18),
OWNER VARCHAR2(30),
OBJECT_NAME VARCHAR2(128),
SQL_TEXT VARCHAR2(4000)
);
--2.建立审计DDL触发器
select to_char(sysdate,'yyyy-mm-dd hh:mm:ss') from dual;
create or replace trigger tri_WCDMA_ddl
after ddl on wcdma.schema
declare
sql_text ora_name_list_t;
i integer;
state_sql varchar2(4000);
begin
for i in 1..ora_sql_txt(sql_text) loop
state_sql := state_sql||sql_text(i);
end loop;
state_sql :=substrb(state_sql,1,4000);
insert into t_wcdma_audit_ddl
(ddl_time,
session_id,
os_user,
ip_address,
terminal,
host,
user_name,
ddl_type,
object_type,
owner,
object_name,
sql_text)
values
(to_char(sysdate,'yyyy-mm-dd hh:mm:ss'),
sys_context('USERENV','SESSIONID'),
sys_context('USERENV','OS_USER'),
sys_context('USERENV','IP_ADDRESS'),
sys_context('USERENV','TERMINAL'),
sys_context('USERENV','HOST'),
ora_login_user,
ora_sysevent,
ora_dict_obj_type,
ora_dict_obj_owner,
ora_dict_obj_name,
state_sql
);
exception when others then
null;
end;
- oracle监控DDL语句
- oracle DDL 语句查询
- Oracle中的DDL语句
- ORACLE获取DDL语句
- 获取Oracle DDL语句
- 常用oracle DDL语句
- Oracle中DDL语句
- oracle常用DDL语句
- oracle DDL语句
- 利用Oracle DDL触发器实现DDL监控
- Oracle常用脚本-监控DDL
- Oracle常用脚本-监控DDL
- ORACLE的DDL语句模板
- Oracle的DDL,DML语句
- Oracle DDL SQL语句总结
- oracle DML、DDL语句区别
- 查看oracle的DDL语句
- Oracle操作语句之DDL语句
- ORACLE字符串截取函数trim(),ltrim(),rtrim()
- 开始起步的EAP,怎么认识EAP
- Wince内核的裁剪
- cocos2d-x开源游戏引擎,C++开发iphone/android/uphone/win32游戏
- ubuntu下oracle10g EM 显示乱码正确的解决办法 口口
- oracle监控DDL语句
- 企业如何建立自己的网络营销体系-傲通达科技
- 关于软件测试的问与答(与神仙的对话)
- 获取apache连接数和服务器负载
- 实习日记->第十一天
- 0309
- 在windows 和 linux 混合 变成的源代码问题
- 预备编写长期栏目 —— 一起欣赏架构
- f03056.cpp 读入一串以回车结尾带空格的字符序列