问题说明:
建库时,归档路径默认使用了快速恢复区,归档日志文件后缀为.arc
生成的归档日志文件如下:
SQL> select thread#,sequence#,name,IS_RECOVERY_DEST_FILE from v$archived_log where name is not null;
THREAD# SEQUENCE# NAME IS_RECOVERY_DEST_FILE
---------------------------------------------------------------------------------------------------------------------------------
1 30 /oracle/app/fast_recovery_area/WIND2/archivelog/2021_09_06/o1_mf_1_30_jmc28528_.arc YES
1 31 /oracle/app/fast_recovery_area/WIND2/archivelog/2021_09_06/o1_mf_1_31_jmckszw4_.arc YES
今天对两个数据库参数做了如下调整:
--修改归档路径为/Data/oradata/archivelog
SQL>alter system set standby_archive_dest='/Data/oradata/archivelog';
SQL>alter system set log_archive_dest_1='location=/Data/oradata/archivelog';
手动切换log后发现新生成的归档日志后缀变成了.dbf
SQL>alter system switch logfile;
SQL> select thread#,sequence#,name,IS_RECOVERY_DEST_FILE from v$archived_log where name is not null;
THREAD# SEQUENCE# NAME IS_RECOVERY_DEST_FILE
---------------------------------------------------------------------------------------------------------------------------------
1 30 /oracle/app/fast_recovery_area/WIND2/archivelog/2021_09_06/o1_mf_1_30_jmc28528_.arc YES
1 31 /oracle/app/fast_recovery_area/WIND2/archivelog/2021_09_06/o1_mf_1_31_jmckszw4_.arc YES
1 32 /Data/oradata/archivelog/1_32_1082313430.dbf NO
原因查找:
SQL> show parameter archive_format
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_format string %t_%s_%r.dbf
因为当前设置的日志存储格式为: %t_%s_%r.dbf
修改方法:
--修改格式为:log_%t_%r_%s.dbf
SQL> alter system set log_archive_format='log_%t_%r_%s.dbf' scope=spfile;
SQL> shutdown immediate
SQL> startup
SQL> show parameter archive_format
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_format string log_%t_%r_%s.dbf
--修改格式为:%t_%r_%s.arc
SQL> alter system set log_archive_format='%t_%r_%s.arc' scope=spfile;
SQL> shutdown immediate
SQL> startup
SQL> show parameter archive_format
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_format string %t_%r_%s.arc
注意:
ADG中log_archive_format参数修改要指定sid,否则重启后修改无效(修改的过程不会报任何错误),修改命令如下:
--修改格式为:log_%t_%r_%s.dbf
SQL> alter system set log_archive_format='log_%t_%r_%s.dbf' scope=spfile sid='adg1';
--修改格式为:%t_%r_%s.arc
SQL> alter system set log_archive_format='%t_%r_%s.arc' scope=spfile sid='adg1';
参考:http://blog.itpub.net/28909249/viewspace-2107448/