0006-oracle archive and recovery

--设置归档
sqlplus / as sysdba 
archive log list; --查看归档模式
show parameter DB_RECOVERY_FILE_DEST --查看USE_DB_RECOVERY_FILE_DEST路径
db_recovery_file_dest       string  /u01/app/oracle/recovery_area
db_recovery_file_dest_size      big integer 12780M

select GROUP#,SEQUENCE#,MEMBERS,STATUS from v$log; --查看日志组的状态

shutdown immediate  --致性关库
startup mount   --启动到 mount 状态
alter database archivelog; --开启归档模式
alter database noarchivelog; --关闭归档模式

--设置多路复用地址 arch01 和 arch02 (不能喝 USE_DB_RECOVERY_FILE_DEST 共存 )
alter system set log_archive_dest_1='location=/bak/rman/bak/arch01' scope=spfile;
alter system set log_archive_dest_2='location=/bak/rman/bak/arch02' scope=spfile;

show parameter archvie --查看归档的相关信息

--取消设置多路复用地址(取消 shutdown force 后, Archive destination 的值就自动变成了 USE_DB_RECOVERY_FILE_DEST)
alter system set log_archive_dest_1='' scope=spfile;
alter system set log_archive_dest_2='' scope=spfile;

--更改归档日志路径为默认路径
show parameter recover --查看快速恢复区的默认路径
alter system set db_recovery_file_dest='/u01/app/oracle/recovery_area' scope=both sid='*';

--修改归档日志的名称格式
alter system set log_archive_format='arc_%t_%s_%r.arc' scope=spfile;

alter database open; --打开数据库
archive log list; --此时查看归档模式,发现 已由 Disabled 变为了 Enabled 了

show parameter archive --查看 多路复用 和 归档日志的信息,但还需要重启数据库

--查看归档日志视图
col recid for 99;
col name for a100;
set linsize 200;
set linesize 200;
set pagesize 0;
select recid,name,to_char(first_time,'yyyy/mm/dd:hh24:mi:ss') from v$archived_log;

alter system switch logfile; --切换日志,可以多次切换以观察日志组状态和归档日志视图状态


--oracle 快速恢复区介绍
快速恢复区需要设置两个参数,即DB_RECOVERY_FILE_DEST_SIZE,用于设置快速恢复区的最大容量,一个是DB_RECOVERY_FILE_DEST,用于设置快速恢复区在操作系统磁盘上的位置。

1.查看快速恢复区的参数信息
SQL>show parameter db_recovery_file_dest;

2.修改快速恢复区的大小
SQL>alter system set db_recovery_file_dest_size=2g;

3.可以通过数据字典v$recovery_file_dest来查看款速恢复区的空间使用情况。
SQL>col name for a30
SQL>set line 100
SQL>select name,space_limit,space_used,number_of_files from v$recovery_file_dest;

4.解决款速恢复区空间不足的问题
 1)重新设置款速恢复区的大小
  SQL>alter system set db_recovery_file_dest_size=4g;

 2)使用CROSSCHECK和DELETE OBSOLETE指令删除不需要的文件,或者使用DELETE EXPIRED 指令删除那些不需要的备份文件。或者使用RMAN的BACKUP RECOVERY AREA指令将恢复区中的文件复制到磁带中。

 3)删除当前的恢复区,重新设置恢复区位置。
alter system set db_recovery_file_dest='/u01/app/oracle/recovery_area';


 

猜你喜欢

转载自blog.csdn.net/yaoshixian/article/details/85272596
今日推荐