oracle 归档日志通常使用rman进行管理,作为备份集的一部分 正常情况下,可以根据方法删除 1 过期策略 crosscheck archivelog all; delete expired archivelog all;     ---这个只删除过期的日志 delete  archivelog all;   --删除全部归档日志 2 根据保留时间 delete archivelog all complete before ‘sysdate – 7′ ; 这个操作会直接删除物理文件,并且同步…
在开发环境及UAT环境经常碰到需要清除归档日志的情形,对于这个问题方法有很多.可以直接使用rm方式清除归档日志,也可以使用find命令来查找符合条件的记录来清除归档日志,或者直接写个shell脚本来搞定.这样在DEV或者UAT还可以,但是在Prod环境还是建议使用RMAN提供的命令来搞定比较妥当.因为rm,find方式删除了实际的归档日志也释放了空间,但对应的存储在控制文件中的归档信息并没有彻底清除.依旧占用着一些空间未能及时清除而需要控制文件通过age out方式来释放空间.本文描述了使用RM…
RMAN备份归档日志ORA-19575 一.问题描述 1)环境oracle 10g; 2)报错现象RMAN进行备份归档报错失败ORA-19575 二.问题处理 1)根据客户说明的现象,百度了一波(详见参考链接) 2)操作系统mv修改名称存在问题的归档日志后,crosscheck检查归档日志,delete删除无效的归档日志后,再次进行备份,问题已解决. 三.参考链接 https://smarttechways.com/2012/11/01/ora-19575-expected-blocks-in-…
oracle RAC--归档日志的开启方法 2011-10-07 15:53:04 分类: Oracle oracle RAC--归档日志的开启方法   ==================================   10g R1  要修改cluster_database参数  ,10G R2和以后的版本就不需要了  1. 例子(10g R1或之前):  srvctl stop database -d RAC节点1sql>startup mountSQL> alter system…
第一部分  问题描述和环境状态确认 ----1. 问题场景 Oracle DataGuard主库丢失archivelog,如何不重建备库完成同步? 在Oracle DataGuard主从同步过程中可能出现主库archivelog丢失,备库出现gap错误.此时,除了重新完整搭建DataGuard之外,可以通过主库增量备份完成备份重新同步. ----2. 解决方式[主要步骤]1.在备库上找出当前scn:2.根据此scn,在主库上使用rman完成增量备份:3.传输增量备份到备库,同时在备库上恢复:4.…
案例一:归档日志满,数据库用户无法登陆,业务异常   解决方案一(可以登录rman): rman target /   RMAN> crosscheck archivelog all;   RMAN> delete archivelog until time 'sysdate-7';   RMAN> crosscheck archivelog all;   解决方案二(无法登陆rman) 1.登录数据库服务器,删除归档目录里面的数据库7天之前归档文件 2.删除归档文件之后,再次尝试登陆r…
背景 当Oracle 归档日志满了后,将无法正常登入oracle,需要删除一部分归档日志才能正常登入ORACLE.最近遇到一个问题,一套Oracle 11g数据库使用RMAN删除了归档日志,但是仍然无法释放,导致无法登陆oracle数据库. 1.查看归档日志文件 oracle@ps251n2s:[/opt/oracle/archive/db] ls -ltr |more total 3059881082 -rw-r----- 1 oracle oinstall 725320704 May 20…
设置定时自动清理归档日志脚本 root用户下 [root@localhost ~]# mkdir /nstg [root@localhost ~]# cd /nstg/ [root@localhost nstg]# mkdir bin log tmp [root@localhost nstg]# chown -R oracle:oinstall /nstg [root@localhost nstg]# su - oracle [oracle@localhost ~]$ cd /nstg/bin…
一.报错信息 前几天网站突然访问不了,并且报了如下错误: ora-27101: shared memory realm does not exist ora-01034: oracle not available 11g ORA-24324: service handle not initialized 原因:由于数据库归档日志满了,不能继续往数据库里写数据. 二.查看归档日志大小 su - oracle sqlplus / as sysdba show parameter recover 可查…
之前使用数据库数据迁移过程中出现产生大量归档日志的情况(由于迁移的目标库是DG,必须开启归档). 为避免出现归档空间爆掉的情况,设置定时任务删除系统当前时间30分钟前的归档日志,脚本如下: cat delete_archivelog_30min.sh #!/bin/bash source ~/profile_prod1 $ORACLE_HOME/bin/rman target / log=delete_archivelog.log<<eof crosscheck archivelog all;…
21.1.介绍: 在实际应用中,我们需要实现对数据的备份,其实现方式主要有冷备份和热备份两种,现在我们主要讨论热备份的具体操作. 热备份也称为联机备份,在数据库的存档模式下进行备份,oracel数据库默认存档模式为关闭状态,要实现数据的热备份,需 要改变数据库的存档模式,将其打开,并且需要注意的是数据库的存档模式的操作需要在数据库实例的 MOUNT 模式中进行, 数据库不能处于OPEN状态. 21.2.登录到oracle实例: [oracle@slave-node2 ~]$ echo $ORAC…
归档日志(Archive Log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中.当数据库出现介质失败时,使用数据文件备份,归档日志和重做日志可以完全恢复数据库.日志操作模式:ARCHIVELOG NOARCHIVELOG1,改变日志操作模式:检查当前日志操作模式SELECT log_mode from v$database; 关闭数据库,然后装载数据库SHUTDOWN…
在Oracle中,数据一般是存放在数据文件中,不过数据库与Oracle最大的区别之一就是数据库可以在数据出错的时候进行恢复.这个也就是我们常见的Oracle中的重做日志(REDO FILE)的功能了.在重做日志分成2部分,一个是在线重做日志文件,另外一个就是归档日志文件. 这里不详细说明在线重做日志,而是说一下归档日志(Archive Log).在线重做日志大小毕竟是有限的,当都写满了的时候,就面临着2个选择,第一个就是把以前在线重做日志从头擦除开始继续写,第二种就是把以前的在线重做日志先进行备…
最近一年,手头上负责的项目要部署到很多个地方,由于项目组里没有人对oracle比较熟悉,只能给自己增加一个DBA的角色了.由于短时间内要部署很多单位,备份策略没有设置好,结果过了一个月,用户报告程序开始连不上数据库了,并且发给我错误报告.主要是ora-16038. ora-19809. ora-00312三个错误,意思很明确,就是归档日志写满了,没法继续写入归档日志了,导致数据库被暂停了,等待继续写入归档日志到硬盘. 由于用户业务比较紧张,先考虑紧急处理方案,先将数据库恢复正常,然后再给用户数据…
一.开启归档 1.查看归档信息 SQL> archive log list Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online 当前数据库未开启归档 2.设置归档目录 oracle默认使用闪回恢复区DB_RECOVERY_FILE_DEST作为归档路径 SQL> show parameter DB_REC…
如何解决“归档日志已满问题” 问题描述: 所用数据库为 Oracle 10g ,模式为归档模式,oracle 系统默认的归档空间为2G,由于日志过多,空间写满,数据库的redo文件不能归档,而出现oracle数据库挂起的问题. oem打开oracle 10g 数据库操作界面,会显示如下错误信息: “ 由于输出设备已满或不可用, 归档程序无法归档重做日志.” 数据库无法使用 现将解决办法稍作总结: 方法一:增大归档日志空间的大小 可以通过下面的方法来调整系统的回闪恢复区大小:首先是关闭数据库:以S…
--==================== -- Oracle 归档日志 --==================== Oracle可以将联机日志文件保存到多个不同的位置,将联机日志转换为归档日志的过程称之为归档.相应的日志被称为归档日志. 一.归档日志 是联机重做日志组文件的一个副本 包含redo记录以及一个唯一的log sequence number 对日志组中的一个日志文件进行归档,如果该组其中一个损坏,则另一个可用的日志将会被归档 对于归档模式的日志切换,当日志归档完成后,下一个日志才…
归档日志(Archive Log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中.当数据库出现介质失败时,使用数据文件备份,归档日志和重做日志可以完全恢复数据库. 1.查看当前数据库是否处于归档模式:select name,log_mode from v$database;archive log list; 2.改变非归档模式到归档模式: conn / as sysdba…
恢复归档日志文件如果只是为了在恢复数据文件之后应用归档文件,那并不需要手动对归档文件进行恢复,RMAN会在RECOVER时自动对适当的归档进行恢复.单独恢复归档文件一般是有特别的需求,如创建了Data Guard环境.Standby端丢失了部分归档文件,需要从Primary端重新获取.1.恢复全部归档日志文件RMAN> RESTORE ARCHIVELOG ALL; 2.恢复归档序号为20至30之间的归档文件RMAN> RESTOER ARCHIVELOG SEQUENCE BETWEEN 2…
归档日志(Archive Log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中.当数据库出现介质失败时,使用数据文件备份,归档日志和重做日志可以完全恢复数据库. 日志操作模式:ARCHIVELOG NOARCHIVELOG 1,改变日志操作模式: 检查当前日志操作模式 SELECT log_mode from v$database; 关闭数据库,然后装载数据库 SHUT…
修改Oracle归档日志的方法 Oracle默认安装的归档日志只有50M,在做大量操作的时候会经常切换日志文件,造成性能问题,下面是具体操作方法 1. 下面是查看现有归档日志大小:   SQL> select group#, bytes, status from v$log; 2.  下面是查看归档日志组和路径信息: SQL> select group#, member from v$logfile; 3. 添加新的归档日志组,本例为添加4.5.6三个组: SQL> alter data…
摘自:https://www.jianshu.com/p/f8c0e9309ce2 在默认情况下,oracle数据库是在非归日志档模式中创建的,在非归档日志模式中,进行日志切换时会直接重写redo log,如果此时数据文件因为介质失败被损坏,则数据库恢复时会丢失掉被重写的数据:在归档日志模式下,数据库可以应用最近一次数据库备份开始生成的所有归档日志文件,保证数据无丢失:大部分的生产数据库以archivelog模式运行. oracle数据库在开启归档日志模式后,会自动启动新的进程:归档器ARCn.…
1.ORACLE归档日志介绍 归档日志暴增是oracle比较常见的问题,遇到归档日志暴增,我们该如何排查: 归档日志暴增一般都是应用或者人为引起的 理解归档日志存储的是什么 如何排查归档日志暴增原因 如何优化归档日志暴增 1.1 归档日志是什么 归档日志(Archive Log)是非活动的重做日志(redo)备份. 通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中. 当数据库出现介质失败时,使用数…
怎样将Oracle数据库设置为归档模式及非归档模式 1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和 redo log 重做日志(记录数据库的更改). 归档日志(Archive Log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换时,后台进程ARCH会将重做日志的内容保存到归档日志中,当数据库出现介质失败时,使用数据文件备份,归档日志和重做…
问题: 客户环境12.2 dg备库环境,定时清理归档脚本并未正常清理归档日志文件. 观察日志可以发现存在如下信息 RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process . 一般情况下,如果在备库环境或者主库环境,配置归档清理测量后,DG环境未应用归档将不允许删除. 本次排查RMAN清理归档策略默认,且无法删除的归档日志在DG视图v$archived_log 中ap…
一.Oracle日志介绍 1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和            redo log 重做日志(记录数据库的更改). 本文主要关注Oracle的重做日志. 重做日志分为在线重做日志和归档重做日志.    online Redo log files--在线重做日志,又称联机重做日志,指Oracle以SQL脚本的形式实时记录数据库的数据更新,换句话说,实时保存已执行的SQL脚本到在线日志…
自动删除Oracle过期归档日志的思路如下: 1.编写自动执行的bat脚本文件: 2.Windows设置定期执行计划 OracleArchLogClear.bat D:/Oracle/product/10.2.0/db_1/bin/rman target / cmdfile=D:/OracleArchLogClear.rman log=D:/rman.log OracleArchLogClear.rman DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDA…
Oracle 归档模式和非归档模式 归档模式和非归档模式 在DBA部署数据库之初,必须要做出的最重要决定之一就是选择归档模式(ARCHIVELOG)或者非 归档模式(NOARCHIVELOG )下运行数据库.我们知道,Oracle 数据库需要至少两组联机日志,每当一组 联机日志写满后会发生日志切换,继续向下一组联机日志写入.如果是归档模式,日志切换会触发归档进程 (ARCn)进行归档,生成归档日志.Oracle 保证归档完成前,联机日志不会被覆盖,如果是非归档模式, 则不会触发归档动作. 归档模…
ORACLE 正确删除归档日志的方法 我们都知道在controlfile中记录着每一个archivelog文件的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除 archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在了,这时候我们要做手工的清除的话,下面我经过实验,可以…
我们都知道在controlfile中记录着每一个archivelog文件的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除 archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在了,这时候我们要做手工的清除的话,下面我经过实验,可以尝试这种方法: 1.进入rman [r…