oracle归档默认路径,更改ORACLE归档路径及归档模式

在ORACLE10g和11g版本,ORACLE默认的日志归档路径为闪回恢复区($ORACLE_BASE/flash_recovery_area)。对于这个路径,有一个限制,就是默认只有2G的空间,而且不只是归档日志的默认路径,也是备份文件和闪回日志的默认路径,这样的话归档日志所使用的空间就不足2G。

可以使用下面的语句查看归档信息:SQL> archive log list;Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            USE_DB_RECOVERY_FILE_DESTOldest online log sequence     13

Next log sequence to archive   15

Current log sequence           15

上面的存档终点USE_DB_RECOVERY_FILE_DEST默认就是闪回恢复区($ORACLE_BASE/flash_recovery_area)。

可以通过下面的SQL查看闪回恢复区的信息:SQL> show parameter db_recover;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

db_recovery_file_dest                string     /u01/app/flash_recovery_area

db_recovery_file_dest_size           big integer 2G

也可以通过查询v$recovery_file_dest视图查看闪回恢复区的限制信息:SQL> select NAME,SPACE_LIMIT,SPACE_USED from v$recovery_file_dest;

NAME                                               SPACE_LIMIT SPACE_USED

-------------------------------------------------- ----------- ----------

/u01/app/flash_recovery_area                        2147483648  923945472

默认情况下,归档日志文件会存放到闪回恢复区内,如果闪回恢复区已经使用2G,归档日志就可能无法继续归档,通常解决的方法是增大闪回恢复区,可以用下面的SQL语句实现:SQL>alter system set db_recovery_file_dest_size=3G;

System altered.

虽然闪回恢复区ORACLE会自动管理,如果闪回恢复区空间不足就会清理掉没用的数据,但是如果备份策略很完善,数据库非常繁忙的情况下,还有可能遇到这种情况,通常需要修改归档日志的路径,将归档日志放到其他不受限制的路径下来解决这个问题,可通过下面的SQL语句来修改归档日志的存放路径:现将归档日志文件放在$ORACLE_BASE/my_arch目录下

SQL> alter system set log_archive_dest_1='location=/u01/app/my_arch';

System altered.

然后将数据库启动到MOUNT状态,将数据库修改为归档模式后将数据库启动到OPEN状态:SQL>shutdown immediate;Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount;ORACLE instance started.

Total System Global Area  281018368 bytes

Fixed Size                  2020160 bytes

Variable Size             104860864 bytes

Database Buffers          167772160 bytesRedo Buffers                6365184 bytes

Database mounted.

SQL>alter database archivelog;

Database altered.

SQL> alter database open;

Database altered.

SQL> archive log list;Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination           /u01/app/my_archOldest online log sequence     13

Next log sequence to archive   15

Current log sequence           15

可以通过切换日志,查看归档路径下是否有归档日志产生来验证路径设置是否正确,如下:SQL> alter system switch logfile;

System altered.

查看归档路径$ORACLE_BASE/my_arch下是否有归档日志产生:[oracle@myCentOS01 my_arch]$ ll

total 40488

-rw-r-----. 1 oracle oinstall 41458688 Dec 20 13:41 1_15_834370738.dbf[oracle@myCentOS01 my_arch]$ pwd

/u01/app/my_arch[oracle@myCentOS01 my_arch]$ date

Fri Dec 20 13:42:43CST 2013

[oracle@myCentOS01 my_arch]$

可以看到在/u01/app/my_arch路径下已经产生了归档日志,归档日志的名字受log_archive_format参数设置,可以通过下面的命令查看SQL> show parameter log_archive_format;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

log_archive_format                   string      %t_%s_%r.dbf

其中t%表示线程号,可以理解为是节点号,如果不是RAC环境,t%都是1;s%表示日志切换号,也就是上文archive log list中的当前日志序列;r%是场景号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值