author : skate
time :2009/02/21
1.更改归档路径
在ORACLE10G中,默认的归档路径为$ORACLE_BASE/flash_recovery_area。对于这个路径,
ORACLE有一个限制,就是默认只能有2G的空间给归档日志使用,可以使用下面两个SQL语句去查看它的限制
1. select * from v$recovery_file_dest;
sql >show parameter db_recovery_file_dest(这个更友好直观一些)
当归档日志数量大于2G时,那么就会由于没有更多的空间去容纳更多的归档日志会报无法继续归档的错误。
如:
RA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 10017792 bytes disk space from 2147483648 limit
ARC0: Error 19809 Creating archive log file to '/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2007_04_30/o1_mf_1_220_0_.arc'
这时我们可以修改它的默认限制,比如说将它增加到5G或更多,也可以将归档路径重新置到别的路径,就不会有这个限制了。
更改限制语句如下:
alter system set db_recovery_file_dest_size=5368709102 (这里为5G 5x1024x1024x1024=5G)
或者直接修改归档的路径即可
SQL> alter system set log_archive_dest_1='location=/u01/archivelog' scope =both;
2.更改归档模式
sql> archive log list;
sql> shutdown immediate;
sql> startup mount;
sql> alter database archivelog;
sql> alter database open;
sql> archive log list;
-----end----
网友问如下两个问题,因CSDN破网站不能回复,所以就在文章里回复了,呵呵
oracle 10g rac下如何打开归档模式?
答:在确定好每个实例的归档路径后,关闭所有实例,然后把某个时候mount后,把数据库和数据库集群软件都设置为归档模式,例如
alter database archivelog;
alter system set cluster_database=true scope=spfile sid='*';
最后重启数据库,确认归档是否生效,在每个实例上,执行alter system switch logfile;看对应的归档位置时候有archivelo*生
oracle rac用的是裸设备?
答:
首先你的共享存储用的裸设备,而你的数据库软件用的应该是文件系统吧? archivelog是在media recovery的时候才会用到,而且所有的实例要都能访问到,根据这个特点,可以把archivelog放在共享的裸设备上或者放在本地(其他实例可以把archivelog同步到本地或者用NFS归档,在或者用tns归档),放在共享存储裸设备上,可能会产生争用,管理也不方便