zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

Oracle 如何规范清理v$archived_log记录实例详解

Oracle实例log 如何 详解 记录 清理 规范
2023-06-13 09:19:59 时间

Oracle 如何规范清理v$archived_log记录实例详解

单机实例上面,v$archived_log 很多,有上万条记录了,所以得清理一下,不然每次查询都直接滚屏幕了

SQL select sequence#,applied from v$archived_log order by sequence# ;

SEQUENCE# APPLIED
..
SEQUENCE# APPLIED
-
9376 NO
9377 NO
9377 NO
9378 NO
9378 NO
9379 NO
9379 NO
9380 NO
9380 NO
9381 NO
9381 NO

SEQUENCE# APPLIED
-
9382 NO
9382 NO

11200 rows selected.

SQL

然后查看下当前的归档记录

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

看到归档记录才是164,和v$archived_log里面上W的记录数不匹配,这是因为这是rman备份恢复遗留下来的记录,所以需要清理一下。

清理记录,采用sys.dbms_backup_restore.resetCfileSection(11);清理:

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

再次测试,可以查看到日志记录变化了,v$archived_log已经是最新的,只有一条记录数存在了:

SQL alter system switch logfile;

System altered.

SQL select sequence#,applied from v$archived_log order by sequence# ;

SEQUENCE# APPLIED
-
166 NO

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库

#master库上v$archived_log表记录数:
SQL 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

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题

本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 Oracle 如何规范清理v$archived_log记录实例详解