dataguard之主库增加数据文件--逻辑备库相应的调整(二)

该dataguard结构是:一个主库,带了一个物理备库和多个逻辑备库。
物理备库的调整:=http://space.itpub.net/23073818/viewspace-711822
主库上需要在目录/home1/oradata/mspdb/下增加数据文件,检查逻辑备库,发现备库上不存在目录/home1/oradata/mspdb/。于是逻辑备库调整如下:
注:参数standby_file_management,对于逻辑备库是不起作用的。
--停止日志应用
alter database stop logical standby apply;
--创建下面的过程
create /*or replace*/ procedure handle_tbs_ddl 
 (
 v_old_stmt in varchar2, 
 v_stmt_type in varchar2, 
 v_schema in varchar2, 
 v_name in varchar2, 
 v_xidusn in number, 
 v_xidslt in number, 
 v_xidsqn in number, 
 v_action out number, 
 v_new_stmt out varchar2
 ) as
 begin                --1主库路径                                  -- 备库的路径
 v_new_stmt := replace(v_old_stmt,'/home1/oradata/mspdb/','/home/oracle/oradata/mspdb/');
 v_action := dbms_logstdby.skip_action_replace;
 exception
 when others then
 v_action := dbms_logstdby.skip_action_error;
 v_new_stmt := null;
 end;
/
exec dbms_logstdby.skip(stmt => 'TABLESPACE', proc_name => 'HANDLE_TBS_DDL');
--开启日志应用
alter database start logical standby apply immediate;
----------------------------------------------------------------------------
-- 主库添加数据文件
alter tablespace DEFAULTSPACE add datafile '/home1/oradata/mspdb/defaultspace09.dbf' size 10g;
检查发现主备一切正常。

请使用浏览器的分享功能分享到微信等