数据库里面有很多归档相关参数,今天学习了下:
数据库是10gR2.采用spfile方式启动,默认是没有设置日志归档的目的地
sys@OMAR> show parameter log_archive_dest
NAME TYPE VALUE
------------------------------------ ----------- -------
log_archive_dest string
log_archive_dest_1 string
log_archive_dest_10 string
log_archive_dest_2 string
log_archive_dest_3 string
log_archive_dest_4 string
log_archive_dest_5 string
log_archive_dest_6 string
log_archive_dest_7 string
log_archive_dest_8 string
log_archive_dest_9 string
log_archive_dest_state_1 string enable
log_archive_dest_state_10 string enable
log_archive_dest_state_2 string enable
log_archive_dest_state_3 string enable
log_archive_dest_state_4 string enable
log_archive_dest_state_5 string enable
log_archive_dest_state_6 string enable
log_archive_dest_state_7 string enable
log_archive_dest_state_8 string enable
log_archive_dest_state_9 string enable
sys@OMAR> show parameter dup
NAME TYPE VALUE
------------------------------------ ----------- --------------
log_archive_duplex_dest string
sys@OMAR> archive log list
数据库日志模式 存档模式
自动存档 启用
//****默认是使用这个目的地,use_db_recovery_file_dest,这个参数的设置在下面****//
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 6
下一个存档日志序列 7
当前日志序列 7
sys@OMAR> show parameter recovery
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string d:oracleproduct10.2.0/flash_recovery_area
db_recovery_file_dest_size big integer 2G
sys@OMAR> alter system set log_archive_dest="E:test";
alter system set log_archive_dest="E:test"
*
第 1 行出现错误:
ORA-02097: 无法修改参数, 因为指定的值无效
ORA-16018: 无法将 LOG_ARCHIVE_DEST 与 LOG_ARCHIVE_DEST_n 或 DB_RECOVERY_FILE_DEST 一起使用
//*****错误的原因ORACLE已经给了,相应的log_archive_duplex_dest 参数也是不可以和上述的参数一起指定的****//
sys@OMAR> alter system set log_archive_dest_1='location=e:test';
系统已更改。
sys@OMAR> show parameter log_archive_dest_1
NAME TYPE VALUE
------------------------------------ ----------- -----------------
log_archive_dest_1 string location=e:test
sys@OMAR> archive log list
数据库日志模式 存档模式
自动存档 启用
存档终点 e:test
最早的联机日志序列 6
下一个存档日志序列 7
当前日志序列 7
sys@OMAR> alter system archive log current;
系统已更改。
//***设置第二归档,设置好了后在OS里把最后test删除***//
sys@OMAR> alter system set log_archive_dest_2="location=e:testtest optional";
系统已更改。
sys@OMAR> alter system switch logfile;
系统已更改。
//***查看alert警告日志文件,发现以下错误,数据库运行正常***//
Errors in file d:oracleproduct10.2.0adminorclbdumporcl_arc1_3848.trc:
ORA-09291: sksachk: 为归档目标指定的设备无效
OSD-04018: 无法访问指定的目录或设备。
O/S-Error: (OS 2) 系统找不到指定的文件。
Wed Sep 12 20:30:56 2007
Cannot translate archive destination string 'LOG_ARCHIVE_DEST_2'
//****重新设置log_archive_dest_1,然后查看归档目的地发生了改变,查看OS相应目录***//
//***再次alter system switch logfile后,alert告警日志文件不报错***//
//***改变归档参数使用mandatory选项,然后再归档。便会发生错误,无法归档***//
sys@OMAR> alter system set log_archive_dest_2="location=e:testtest mandatory";
系统已更改。
sys@OMAR> alter system archive log current;
alter system archive log current
第 1 行出现错误:
ORA-16038: 日志 1 序列号 18 无法归档
ORA-09291: sksachk: 为归档目标指定的设备无效
ORA-00312: 联机日志 1 线程
1: 'D:ORACLEPRODUCT10.2.0ORADATAORCLREDO01.LOG'
//***观察alert警告日志文件下,错误产生情况如下***//
Errors in file d:oracleproduct10.2.0adminorcludumporcl_ora_1448.trc:
ORA-16014: 日志 1 的序列号 18 未归档, 没有可用的目的地
ORA-00312: 联机日志 1 线程
1: 'D:ORACLEPRODUCT10.2.0ORADATAORCLREDO01.LOG'
Wed Sep 12 20:38:27 2007
ARC0: Archiving not possible: No available destinations
ARC0: Failed to archive thread 1 sequence 18 (4)
//***修改log_archive_dest_state_2的值为defer表示静用archive2的归档目的**//
sys@OMAR> alter system set log_archive_dest_2="location=e:testtest mandatory";
系统已更改。
sys@OMAR> alter system set log_archive_dest_state_2=defer;
小结下:
1, log_archive_dest_n用于指定多个归档目的地,可以指定本地(location),也可以指定远程目的地(service);归档时候可以设置为optional或mandatory或reopen,当然是否归档目的地是由log_archive_dest_state_n参数所对应, 10g最多可以设置10个归档目的地。
2, log_archive_dest,log_archive_duplex_dest也可以设置归档,但感觉已经没有发展前途了,当设置了log_archive_dest_n后,这两个参数就无法指定了。上述例已说明。
3, log_archive_dest_n可以设置本地,也可以设置远程;但log_archive_dest和log_archive_duplex_dest只能设置本地归档
4, log_archive_dest_n可以最多设置达10个,而log_archive_dest和log_archive_duplex_dest最多设置两个
5, 使用log_archive_dest_n参数
alter system set log_archive_dest_1=’location=c:’ ------设置本地归档目的地
alter system set log_archive_dest_2=’service=standby’ ------设置远程,standby为连接服务名
alter system set log_archive_dest_3=’location=d: optional’ -----默认选项,表示无论归档是否成功,都可以覆盖冲做日志
alter system set log_archive_dest_4=’location=e: mandatory’ -----设置强制归档,表示只有在归档成功之后,重做日志才被覆盖
alter system set log_archive_dest_5=’location=f: reopen 10’ -----重新归档的时间间隔,如果不写10秒,默认的是300秒
6, 使用log_archive_dest_state_n参数
alter system set log_archive_dest_state_2=defer ----表示禁用响应归档目的
alter system set log_archive_dest_state_2=enable -----表示打开,也是默认的
7, 使用log_archive_max_processes参数控制归档进程个数,默认2个
8, 使用log_archive_min_succeed_dest保证本地归档最小成功个数
9, 使用log_archive_format指定归档格式
%s 日志序列号 %S 日志序列号(带有前导0)
%t 重做现成编号 %T 重做现成编号(带有前导0)
%a 活动ID号 %d 数据库ID号 %r reselogs的ID值
//*****查看归档的相关信息***//
v$archive_log v$archive_dest v$loghist v$archive_processes
sys@OMAR> select dest_name,destination,status from v$archive_dest;
DEST_NAME DESTINATION STATUS
-------------------- -------------------- ---------
LOG_ARCHIVE_DEST_1 e:test VALID
LOG_ARCHIVE_DEST_2 e:testtest DEFERRED
LOG_ARCHIVE_DEST_3 INACTIVE
LOG_ARCHIVE_DEST_4 INACTIVE
LOG_ARCHIVE_DEST_5 INACTIVE
LOG_ARCHIVE_DEST_6 INACTIVE
LOG_ARCHIVE_DEST_7 INACTIVE
LOG_ARCHIVE_DEST_8 INACTIVE
LOG_ARCHIVE_DEST_9 INACTIVE
LOG_ARCHIVE_DEST_10 INACTIVE
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9925929/viewspace-977517/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9925929/viewspace-977517/
595

被折叠的 条评论
为什么被折叠?



