首先查看数据库现有模式可使用以下语句
select
name,log_mode from v$database;
也可以用下面的语句
archive
log list;(该方法需要as sysdba)
对于非归档模式的数据库该为归档模式(主要以Oracle
10g为参考)使用以下步骤:
1.
SQL> alter system set
log_archive_dest_1=‘location=/oracle/oracle10g/log/archive_log‘;
该语句含义是确定归档日志的路径,实际上Oracle
10g可以生成多份一样的日志,保存多个位置,以防不测
例如再添加一个日志位置可使用以下语句
SQL>alter
system set
log_archive_dest_2=‘location=/oracle/oracle10g/log2/archive_log‘;
2.关闭数据库
SQL>
shutdown immediate
3.启动数据mount状态:
SQL>
startup mount;
4、修改数据库为归档模式:
SQL>
alter database archivelog;
5、打开数据库,查询:
SQL>
alter database open;
修改日志文件命名格式:
SQL>
alter system set log_archive_max_processes = 5;
SQL>
alter system set log_archive_format = "archive_%t_%s_%r.log"
scope=spfile;
修改完成后可以查看日志模式是否修改成功!
特别指出的是在Oracle
9i中还要修改参数log_archive_start = true才能生效,oracle
10g中已经废除了该参数,所以不需要设置该参数。