问题简述:10gRAC+ASM归档路径dbrecover磁盘组空间满,导致日志无法切换,数据库hang住,原因是legato备份软件出问题后,没有及时备走归档日志。

巡检查看数据库日志,一直报在线重做日志无法归档,通过咨询用户,说前台业务也受到影响。

1.     查看归档目录磁盘组剩余空间

SQL> archive log list

Database log mode             Archive Mode

Automatic archival            Enabled

Archive destination           USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence    18724

Next log sequence to archive  18728

Current log sequence          18728

Show parameter db_recovery_file

db_recovery_file_dest               string     +DGRECOVER

db_recovery_file_dest_size          big integer48G

[oracle@dbsvr4:/oracle/app/oracle/script]$export ORACLE_SID=+ASM1

[oracle@dbsvr4:/oracle/app/oracle/script]$asmcmd

ASMCMD> lsdg

State   Type   Rebal Unbal Sector Block      AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name

MOUNTED EXTERN N     N        512  4096 1048576    51200   91               0          32476             0 DGRECOVER/

2.     由于是asm磁盘组,无法通过操作系统cp命令把归档日志拷贝到文件系统中,只能用BACKUP ARCHIVELOG delete input命令来移走部分归档文件到磁盘中。

运行脚本如下:

rman target sys/sys@gzfin2

connect catalog rman/rman@rman

BACKUP ARCHIVELOG FROM LOGSEQ 17828 UNTIL LOGSEQ 17869 THREAD 2 format/bak/U%_arc.bak delete input;

3.     用以上命令备份归档成功后,大约删除10g的归档容量,这时日志切换和应用恢复正常。

4.     解决legato备份软件问题后,用备份软件备份剩余归档日志到磁带中。

5.     恢复17828到17869段的归档日志

运行脚本如下:

rman target sys/sys@gzfin2

connect catalog rman/rman@rman

RMAN> restore archivelog from logseq 17828 until logseq 17869 thread 2;

archive log thread=2 sequence=17869

channel ORA_DISK_1: reading from backup piece /bak/U%_arc.bak

channel ORA_DISK_1: restored backup piece 1

piece handle=/bak/U%_arc.bak tag=TAG20091118T112811

channel ORA_DISK_1: restore complete, elapsed time: 00:03:38

Finished restore at 18-NOV-09

6.     再用备份软件备走恢复的归档日志,这是查看dgrecover磁盘组,空间已经释放

ASMCMD> lsdg

State   Type   Rebal Unbal Sector Block      AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name

MOUNTED EXTERN N     N        512  4096 1048576   204800  158607               0         158607             0 DGDATA/

MOUNTED EXTERN N     N        512  4096 1048576    51200   41199               0          31199             0 DGRECOVER/

MOUNTED EXTERN N     N        512  4096 1048576    51200    6211               0           6211             0 DGSYSTEM/

ASMCMD>

4  总结

在备份与恢复指定的归档日志时,一定要加上日志对应的实例thread号,因为是RAC模式,要不报找不到备份集的错误。

released channel: t1

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of restore command at 11/18/2009 16:17:03

RMAN-06026: some targets not found - aborting restore

RMAN-06102: no channel to restore a backup or copy of log thread 1 seq 17869 lowscn 1156551412

RMAN-06102: no channel to restore a backup or copy of log thread 1 seq 17868 lowscn 1156320510

RMAN-06102: no channel to restore a backup or copy of log thread 1 seq 17867 lowscn 1156320475

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐