先手动建立归档目录,在调整oracle启动方式
将oracle设为归档模式
手工在主服务器创建归档目录
$cd $ORACLE_BASE
#$ORACLE_BASE 所指向的目录是/opt/oracle/,可参看ORACLE用户环境变量的具体设置
$mkdir -p oradata/szdb/archive
# szdb的目录名称根据数据库的SID号进行指定,其实这个目录可以任意指定
$mkdir -p oradata/szdb/standbyarchive
#如果主服务器有可能作为备用服务器,则建立该目录
[oracle@cqcncdb szdb]$ sqlplus /nolog
SQL conn / as sysdba;
Connected.
SQL startup mount;
SQL alter database archivelog;
SQL archive log start;
SQL archive log list;
SQL alter database open;
SQL alter system set LOG_ARCHIVE_DEST_1='LOCATION=/oracle/oradata/szdb/archive';
# /oracle/oradata/szdb/archive必须和前面mkdir -p oradata/szdb/archive操作建立的路径一模一样
SQL alter system set log_archive_format='%t_%s.dbf' scope=spfile;
SQL alter system set log_archive_start=true scope=spfile;
重新启动数据库,使修改结果生效
SQL shutdown immediate;
察看归档模式
SQL startup
SQL archive log list;
Database log mode
Archive Mode
Automatic archival
Enabled
Archive destination
/oracle/oradata/szdb/archive
Oldest online log sequence
565
Next log sequence to archive
567
Current log sequence
567
以上alter system set操作会在数据库的spfile@sid.ora和init@sid.ora文件中新增以下参数
*.log_archive_dest_1='LOCATION=/oracle/oradata/szdb/archive'
*.log_archive_format='%t_%s.dbf'
*.log_archive_start=TRUE
注意:*.log_archive_dest_1定义的文件夹必须是实际存在的,并且oracle用户是有写权限的
注:@sid代表数据库的实际sid号,比如在这次实际操作中这两个文件名就是spfileszdb.ora、 initszdb.ora