请教高手:
任务描述:
由于工作中经常遇到需要调整oracle的init参数配置文件(包括8i和9i),因此,需要记录这些init里面的parameter的修改情况到一张(或者多张)表里面。
要求:
1、某个数据库某一天的全部init的parameter值;(记录到指定的表中)
2、某个数据库某一天的某个parameter被修改了,需要实时的记录到指定的表中;请教开发高手给我解决方案。给出好的方案的给100分,完全解决的再另加100分,多谢
任务描述:
由于工作中经常遇到需要调整oracle的init参数配置文件(包括8i和9i),因此,需要记录这些init里面的parameter的修改情况到一张(或者多张)表里面。
要求:
1、某个数据库某一天的全部init的parameter值;(记录到指定的表中)
2、某个数据库某一天的某个parameter被修改了,需要实时的记录到指定的表中;请教开发高手给我解决方案。给出好的方案的给100分,完全解决的再另加100分,多谢
create table pp as select * from v$parameter;
2,创建一个记录修改的表
create table xg(NAME VARCHAR2(64),NAME vRCHAR2(64));
3,在pp表上创建一触发器;
ceate trigger tg
after update
on pp
for each row
begin
insert into xg values(:new.name,:new.value);
alter system set :new.name=:new.value;
end;
/
同过修改pp表,来记录并修改系统
然後對此數據進行審核,可以知道哪些記錄被修改過
你的方案我也考虑国,通过job是可以解决每天记录某个数据库的init参数;
但是如何做到适时记录init参数的修改呢?
你说的触发器是建立在表pp上的,可是pp表不是时时同步v$parameters视图的。如何做到pp表和v$parameters表同步呢,即:parameter被修改的时候,适时触发记录到表xg呢?
不可以吗?可以比较时间判断是否修改.
某个数据库某一天的某个parameter被修改了,需要实时的记录到另外一个数据库B指定的表中;主要就在实时上
----------------
今早试了一下,
ORA-04089: 无法对 SYS 所有的对象创建触发器
楼主再想办法吧.