一 设置为归档方式Sql代码
sql> archive log list;
#查看是不是归档方式
sql> alter system set log_archive_start=true scope=spfile;
#启用主动归档
sql> alter system set log_archive_dest=‘‘location=/oracle/ora9/oradata/arch‘‘ scope=spfile;
#设置归档路径
sql> alter system set log_archive_dest_1=‘‘location=/oracle/ora9/oradata/arch1‘‘ scope=spfile;
sql> alter system set log_archive_dest_2=‘‘location=/oracle/ora9/oradata/arch2‘‘ scope=spfile;
#如果归档到两个位置,则可以通过上边方法实现
sql> alter system set log_archive_format=‘‘arch_%d_%t_%r_%s.log‘‘
#设置归档日记款式
sql> shutdown immediate;
sql> startup mount;
#打开控制文件,不打开数据文件
sql> alter database archivelog;
#将数据库切换为归档模式
sql> alter database open;
#将数据文件打开
sql> archive log list;
#查看此时是否处于归档模式 查询以确定数据库位于archivelog模式中且归档过程正在运行
sql> select log_mode from v$database;
sql> select archiver from v$instance;
Sql代码 日志切换
sql> alter system switch logfile;
这次日志切换将归档写到两个目标地, 即上边的/oracle/ora9/oradata/arch1和/oracle/ora9/oradata/arch1,
要是要对目录确认 在oracle情况中运行如下查询:
sql> select name from v$archived_log;
而后在操作系统中确认查询所列出的文件
二 设置非归档方式Sql代码
sql> archive log list;
#查看是否是归档方式
sql> alter system set log_archive_start=false scope=spfile;
#禁用自动归档
sql> shutdown immediate;
sql> startup mount;
#打开控制文件,不打开数据文件
sql> alter database noarchivelog;
#将数据库切换为非归档模式
sql> alter database open;
#将数据文件打开
sql> archive log list;
#查看此时便处于非归档模式
三 归档相关命令Sql代码
archive log stop;
archive log start;
archive log list;
show parameters;
show parameters log_archive_start;
show parameters log_archive_max_process;
#归档进程数 alter system set log_archive_max_process=5;
#将归档进程数改为5
select * from v$bgprocess;
#检察后台进程