oracle归档相关 |
db_recovery_file_dest_size归档文件大小查看,修改 方式1: SQL> show parameter db_recover; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string /u/ss db_recovery_file_dest_size big integer 600G 方式2: show parameter db_recovery_file_dest_size; 当我们将数据库的模式修改为归档模式的时候,如果没有指定归档目录,默认的归档文件就会放到Flash Recovery Area(上文的/u/ss)的目录, 但是这个目录是有大小限制的,如果超过了这个大小,就会导致2个问题, 一是不能完成归档; 二是,在出现问题后,如果此时重启数据库,那么数据库就无法正常启动。 这个问题有3个解决办法: (1)扩大Flash Recovery Area的容量 (2)删除不用的归档日志文件 (3)指定归档日志文件到其他目录 归档日志删除的前提是要保证主备同步 delete noprompt archivelog until time 'sysdate-5';删除5天前的归档。 从Oracle9i开始,spfile被引入Oracle数据库, Oracle首选spfile<ORACLE_SID>.ora文件作为启动参数文件;如果该文件不存在,Oracle选择spfile.ora文件; SQL> set line 256;#(设置linesize为256,即每行不超过256个字符) SQL> select * from v$flash_recovery_area_usage; FILE_TYPE PERCENT_SPACE_USED(已使用的) PERCENT_SPACE_RECLAIMABLE(可回收的) NUMBER_OF_FILES -------------------- ------------------ ------------------------- --------------- CONTROL FILE 0 0 0 REDO LOG 0 0 0 ARCHIVED LOG 80.68 0 1533 BACKUP PIECE 0 0 0 IMAGE COPY 0 0 0 FLASHBACK LOG 0 0 0 FOREIGN ARCHIVED LOG 0 0 0 |
oracle归档: oracle 10g 中系统默认的情况是以DB_RECOVERY_FILE_DEST定义的目录来存放归档日志。DB_RECOVERY_FILE_DEST参数是默认的flash recovery area(闪回恢复区路径)的路径,里面存放有归档日志、闪回日志以及rman的备份文件等文件。 要使用rman备份就必须要对数据库开启归档。 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 18965(最早的联机日志序列) Next log sequence to archive 0(下一个存档日志序列) Current log sequence 18983(当前日志序列) 归档的删除方式: controlfile中记录着每一个archivelog文件的相关信息, 当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息, 在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除 archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉 一个ORACLE归档日志经常满,表现为/archivelog这个文件空间占用100%大。 |
开启数据库归档: 在SQL*Plus下执行以下脚 alter system set log_archive_start = true scope = spfile; 修改系统的日志方式是归档模式。 shutdown immediate; 关闭数据库 startup mount;开启到mount状态 启动 mount 实例,但不启动数据库 alter database archivelog; 更改数据库为归档日志模式 alter database open; 正式开启数据库 |
RMAN(Recovery Manager)是一种用于备份(backup)、还原(restore)和恢复(recover)数据库的 Oracle 工具 备份整个数据库或数据库部件,如表空间、数据文件、控制文件、归档文件以及Spfile参数文件。(SPfile(Server Parameter File,服务器参数文件) rman通过控制文件找到数据文件。数据块为单位进行备份。只备份使用过的数据库。 支持对备份的数据进行压缩。(1:5的压缩比例) rman需要备份控制文件的 rman备份的时候会使用占用io,开启io并发就可以了(等同于给raan配置通道) raan是通过备份脚本进行全库备份的。 备份顺序:先备份数据文件(datafile),再备份归档,再备份控制文件。 (一)、连接本地数据库 [oracle@oracle ~]$ rman target / [oracle@DB:/home/oracle]$rman target / Recovery Manager: Release 11.2.0.3.0 - Production on Mon May 6 18:08:16 2019 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: S (DBID=14628404, not open) 或者先使用rman进入rman模式,然后使用connect target / 连接到相应的dbid 显示 RMAN 默认配置 show all; #使用控制文件来代替恢复目录数据库存放rman元数据信息 using target database control file instead of recovery catalog RMAN configuration parameters for database with db_unique_name S are: #当完成一次备份后,在做完第二次备份的时候,第一次备份结果将被标识为废弃。 CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default #关闭备份优化 CONFIGURE BACKUP OPTIMIZATION OFF; # default #指定i/o操作的设备类型:SBT or DISK.缺省是disk。 CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default #当autobackup别置为on时,rman做任何备份操作,都会自动对控制文件进行备份。 CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default #配置控制文件的备份片的路径和格式 CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default #配置数据库设备类型的并行度。并行的数目决定了开启通道的个数 CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default #配置备份集的大小 CONFIGURE MAXSETSIZE TO UNLIMITED; # default CONFIGURE ENCRYPTION FOR DATABASE OFF; # default #指定加密算法,还有一个是 ‘AES128' CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default #指定归档文件的删除策略,即:归档备份到备库就可以被删除 CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY; #配置控制文件的快照文件的存放路径和文件名,这个快照文件是在备份期间产生的,用于控制文件的读一致性 CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u/oracle/product/11.2/dbs/snapcf_s.f'; # default 归档日志对于ORACLE的数据恢复和备份非常重要,不到万不得已不要删除归档日志。 DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; 说明: SYSDATA-7,表明当前的系统时间7天前,before关键字表示在7天前的归档日志,如果使用了闪回功能,也会删除闪回的数据。 |