检查归档情况SQL>archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination ###########
Oldest online log sequence 1
Next log sequence to archive 2
Current log sequence 2
Automatic archival=Enabled表示归档进行是否自动启动
其中LOG_MODE表示Oracle当前的归档方式。ARCHIVELOG表示数据库运行在归档模式下,NOARCHIVELOG表示数据库运行在非归档模式下。
通过上面的信息可以看出已经是归档模式了 (如果是非归档模式参考博主的另一篇文章 有关“归档日志与非归档日志切换”), 查看归档日志文件存放在哪个位置 运行show parameter log_archive_dest;命令
...
log_archive_dest_state_20 string enable
log_archive_dest_state_21 string enable
log_archive_dest_state_22 string enable
log_archive_dest_state_23 string enable
...
提前建立/u01/app/oracle/arch目录
设置归档目录
SQL>alter system set log_archive_dest='/u01/app/oracle/arch' scope=spfile;
第 1 行出现错误:
ORA-02097: 无法修改参数, 因为指定的值无效
ORA-16018: 无法将 LOG_ARCHIVE_DEST 与 LOG_ARCHIVE_DEST_n 或 DB_RECOVERY_FILE_DEST 一起使用
出现错误的原因是db_recovery_file_dest的参数已经被设置了,去查询一下看看,果真如此。
alter system set db_recovery_file_dest='' scope=spfile;
db_recovery_file_dest是缺省的归档位置,下面把它设置为"空",然后设置log_archive_dest参数,指定另外一个非缺省的参数
重启db
运行 shutdown immediate;
一直没有反应
输入shutdown abort
手动归档,之后去归档目录看看
alter system archive log current;
如果出现以下错误
SQL> startup
ORA-16032: parameter LOG_ARCHIVE_DEST destination string cannot be translated
ORA-07286: sksagdi: cannot obtain device information.
Linux Error: 2: No such file or directory
有可能是归档目录没有建立,需要检查
--转自