oracle归档路径剖析及ORA-02097、ORA-16018的解决办法

在默认情况下,数据库日志模式切换到归档模式后,归档日志的存储路径并没有配置,oracle默认使用一个“快速恢复区”的存储位置,可以通过archive log list查看
SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     14
Next log sequence to archive   18
Current log sequence           18

首先,oracle可以通过下列一组初始化参数指定两个归档路径
log_archive_dest
log_archive_duplex_dest
例如:
sql>alter system set log_archive_dest='/u01/arch';
sql>alter system set log_archive_duplex_dest='/u01/arch2';
除此之外,oracle还提供了另外一组初始化参数设置log_archive_dest_n(n=1~31), 数据库归档时,可以最多产生31个相同的归档日志文件,保证这些归档日志文件的安全,不同的是,这组参数与上组不能同时使用, log_archive_dest_n指定的存储位置既可以是本地目录,也可以是一个ASM磁盘组,还可以是另一个数据库服务器, 本地目录的格式为"location=本地目录",ASM磁盘组的指定格式为location=+磁盘组名称",例如location=+DATA(DATA是ASM磁盘组的名称), 另外一个数据库服务器的指定格式为"service="服务名称"例如:
log_archive_dest_1="location=/u01/arch"
log_archive_dest_2="location=/u01/arch2"
log_archive_dest_3="service=backup"
另外oracle提供31个对应的初始化参数log_archive_dest_state_n 用于分别指定31个归档路径的状态,如果这些参数的值为enable,表明管理员希望数据库使用其位置,如果参数值为defer,则表明暂时不使用对应的归档位置。归档日志文件的名字不能重复,在命名中必须同时使用三个变量,即%S,%T,%R(%S代表重做日志组的sqluence的编号,总共10位,从左边补零;%T,代表重做日志组的thread编号,总共4位,%R代表数据库最近一次以resetlogs方式打开的时间戳,总共10位,左边补0,如果是小写则不补0)
例如:

sql>alter system set log_archive_format='ARC%S_%R.%T' SCOPE=SPFILE;

下面是更改log_archive_dest时报ORA-02097 ORA-16018错误的过程及解决办法:

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequenc
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值