背景 生产同城节点数不一致导致的日志组不一样。如何清理多余日志组?
在Oracle Dataguard中,如何清理日志文件有两种办法:
1. Switch over
2.重建控制文件:
本文记录一下重建控制文件的过程
1.主库做controlfile的备份
sqlplus / as sysdba
alter database create standby controlfile as '/tmp/std.ctl';
2.拷贝至备库
3.备库恢复控制文件
rman target /
restore controlfile from '/tmp/std.ctl';
alter database mount;
catalog start with '+data/std/datafile/';
switch database to copy;
exit;
清理日志组
sqlplus / as sysdba
select 'alter database clear logfile group '|| group#||';' from v$log;
执行上述清理日志sql;
开启日志应用,开启数据库
alter database recover managed standby database disconnect;
alter database recover managed standby database cancel;
alter database open;
备库已启动。完成