查询数据库当前归档模式
select log_mode from v$database;
ARCHIVELOG(自动归档模式)、NOARCHIVELOG(非归档模式)、MANUAL(手工归档模式)
把数据库从非归档模式修改为归档模式
- 关闭数据库
shutdown immediate
- 把数据库启动到MOUNT状态
startup mount
- 把数据库修改为自动归档模式
alter database archivelog;
- 打开数据库
alter database open;
- 查看修改结果
archive log list;
- 强制日志切换
alter system archive log start;
把数据库从归档模式修改为非归档模式
- 关闭数据库
shutdown immediate
- 把数据库重新启动到MOUNT状态
startup mount
- 把数据库修改为非归档模式
alter database noarchivelog;
- 打开数据库,供用户访问
alter database open;
创造条件让数据库归档,之后查看归档是否成功。
- 查看数据库是否是非归档状态,如果是归档状态转换成非归档状态:
select log_mode from v$database;
- 设置归档位置和归档日志文件的命名方法
alter system set log_archive_dest = 'd:\oracle\oradata\archive';
alter system set log_archive_duplex_dest = 'd:\oracle\archive';
alter system set log_archive_format = '%R_%T_%S.arc' scope = spfile;
- 按照上面步骤将非自动归档模式转为自动归档模式
shutdown immediate
startup mount
alter database archivelog;
alter database open;
- 查看修改结果
archive log list
- 检查日志文件是否正确归档:
alter system switch logfile;
- 可以查看到主归档位置中日志文件的归档情况。