Oracle归档的开启和关闭

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle归档的开启和关闭相关的知识,希望对你有一定的参考价值。

--1、开启归档
【步骤】
a.一致性关闭数据库(shutdown [immediate | transactional |normal])
b.启动到mount阶段(startup mount)
c.切换到归档模式(alter database archivelog[manual])
d.切换到open阶段(alter database open)
e.对数据做一个完整备份(full backup)


show parameter spfile
alter system set log_archive_dest_1='location=/ggs/arch_data' scope=spfile;
alter system set db_recovery_file_dest_size=100g scope=spfile sid='*';
alter system set db_recovery_file_dest='/ggs/ora_recovery' scope=spfile;
alter system set log_archive_format='arch_%t_%s_%r.arc' scope=spfile;

shutdown immediate;
startup mount;
alter database archivelog;
alter database open ;
archive log list;

--2、关闭归档
【步骤】归档模式切换到非归档模式
a. [immediate | transactional |normal])一致性关闭数据库(shutdown
b.启动到mount阶段(startup mount)
c.切换到归档模式(alter database noarchivelog)
d.切换到open阶段(alter database open)

关闭归档模式:
shutdown immediate;
startup mount;
alter database noarchivelog;
alter database open;

查看归档文件:
select * from v$log;
select * from v$logfile;
select * from v$flash_recovery_area_usage;
report obsolete;
delete obsolete;
 
备份归档文件:
backup archivelog all;
 
也可以:
先执行alter system switch logfile;
 再找到归档日志位置,复制到别的地方即可。
rman target /
delete archivelog all completed before 'sysdate-7';
backup first
backup format '/tmp/arch-%t_%s_%u' archivelog all delete input;
或者backup database plus archivelog;

删除归档文件:
rman target / 或者 rman target user/[email protected]
list archivelog all;
crosscheck archivelog all;
list expired archivelog all;
delete expired archivelog all;

以上是关于Oracle归档的开启和关闭的主要内容,如果未能解决你的问题,请参考以下文章

如何启动或关闭oracle的归档模式

oracle 如何关闭打开归档日志的方法

Oracle数据库如何开启自动归档

单纯修改oracle归档路径需要关闭数据库吗

Oracle12C开启归档模式

Oracle12C开启归档模式