Oracle 如何规范清理v$archived_log记录实例详解
Oracle 如何规范清理v$archived_log记录实例详解单机实例上面,v$archived_log 很多,有上万条记录了,所以得清理一下,不然每次查询都直接滚屏幕了 select sequence#,applied from v$archived_log order by sequence# ;SEQUENCE# APPLIED 9376 NO SEQUENCE# APPLIED 9382 NO 11200 rows selected. SQL> 然后查看下当前的归档记录 archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 164 Next log sequence to archive 166 Current log sequence 166 SQL>看到归档记录才是164,和v$archived_log里面上W的记录数不匹配,这是因为这是rman备份恢复遗留下来的记录,所以需要清理一下。 清理记录,采用sys.dbms_backup_restore.resetCfileSection(11);清理: execute sys.dbms_backup_restore.resetCfileSection(11);PL/SQL procedure successfully completed. SQL> select sequence#,applied from v$archived_log order by sequence# ; no rows selected SQL> 再次测试,可以查看到日志记录变化了,v$archived_log已经是最新的,只有一条记录数存在了: alter system switch logfile;System altered. SQL> select sequence#,applied from v$archived_log order by sequence# ; SEQUENCE# APPLIED
SQL> execute sys.dbms_backup_restore.resetCfileSection(11); PL/SQL procedure successfully completed. SQL> select sequence#,applied from v$archived_log order by sequence# ; no rows selected SQL> 扩展话题,单机实例可以用上,述办法操作,那么Oracle集群比如dg呢,分析master库、standby库 select count(1) from v$archived_log;COUNT(1)623616 SQL> standby库上v$archived_log表记录数:SQL> select count(1) from v$archived_log; COUNT(1)2226823 SQL> 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |