数据库归档管理

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库归档

1、查看、更改归档路径

在ORACLE10G中,默认的归档路径为$ORACLE_BASE/flash_recovery_area。对于这个路径,

ORACLE有一个限制,就是默认只能有2G的空间给归档日志使用,可以使用下面两个SQL语句去查看它的限制

select * from v$recovery_file_dest;

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;

或者直接修改归档的路径即可

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;alter database noarchivelog

sql> alter database open;

sql> archive log list;

3、确认归档是否生效

alter system switch logfile;看对应的归档位置时候有archivelog产生。

该参数已废弃,只要开启了archivelog就自动归档。

4、设置归档文件格式

当数据库处理ARCHIVELOG模式时,如果进行日志切换,后台进程将自动生成归档日志。归档日志的默认位置为%ORACLE_HOEM%\RDBMS,在Oracle 11g中,归档日志的默认文件名格式为ARC%S%_%R%T。为了改变归档日志的位置和名称格式,必须改变相应的初始化参数。

初始化参数LOG_ARCHIVE_FORMAT用于指定归档日志的文件名称格式,设置该初始化参数时,可以指定以下匹配符:

%s 日志序列号。

%S 日志序列号,但带有前导0。

%t 重做线程号。

%T 重做线程号,但带有前导0。

%a 活动ID号。

%d 数据库ID号。

%r RESETLOGS的ID值。

需要注意,在Oracle 11g中,配置归档日志文件格式时,必须带有%s,%t 和%r匹配符,其他匹配符可有可无。配置了归档文件格式后,必须重新启动数据库。例如:

SQL> alter system set log_archive_format='%s_%t_%r.arc' scope=spfile;

系统已更改。

SQL> shutdown immediate;

SQL> startup

修改初始化参数LOG_ARCHIVE_FORMAT并重启数据库后,实始化参数配置将会生效。进行日志切换时,会生成该格式的归档日志文件。

5、归档模式启停

1.archive log stop;

2.archive log start;

6、查看归档日志

select name from v$archived_log;

7、归档相关参数

log_archive_dest &LOG_ARCHIVE_DEST_n

使用log_archive_dest参数最多可设置2个归档路径,通过log_archive_dest设置一个主归档路径,通过LOG_ARCHIVE_DUPLEX_DEST 参数设置一个从归档路径。所有的路径必须是本地的,该参数的设置格式如下:

LOG_ARCHIVE_DEST = '/disk1/archive'

LOG_ARCHIVE_DUPLEX_DEST = '/disk2/archive'

LOG_ARCHIVE_DEST_n 参数可以设置最多10个不同的归档路径,通过设置关键词location 或service,该参数指向的路径可以是本地或远程的。

LOG_ARCHIVE_DEST_1 = 'LOCATION = /disk1/archive'

LOG_ARCHIVE_DEST_2 = 'LOCATION = /disk2/archive'

LOG_ARCHIVE_DEST_3 = 'LOCATION = /disk3/archive'

如果要归档到远程的standby数据库,可以设置service:

LOG_ARCHIVE_DEST_4 = 'SERVICE = standby1'

可见,这两个参数都可以设置归档路径,不同的是后者可以设置远程归档到standby端,而前者只能归档到本地,且最多同时归档到2个路径下。

log_archive_dest_n&DB_RECOVERY_FILE_DEST

参数都可以用来存放归档日志,但二者的关系是:不设置log_archive_dest_n时,使用DB_RECOVERY_FILE_DEST来存文件;当设置了log_archive_dest_n时,则使用log_archive_dest_n来存放归档日志。

8、查看归档日志所占空间

select * from V$FLASH_RECOVERY_AREA_USAGE;

相关文档
最新文档