告警日志提示的错误信息:
Linux-x86_64 Error: 21: Is a directory
Fri Dec 11 08:54:36 2015
Errors in file /u01/app/oracle/diag/rdbms/jzfpdb/jzfpdb1/trace/jzfpdb1_m000_3150.trc:
ORA-01580: error creating control backup file /u01/app/oracle/11.2.0/db/dbs/
ORA-27056: could not delete file
Linux-x86_64 Error: 21: Is a directory
Errors in file /u01/app/oracle/diag/rdbms/jzfpdb/jzfpdb1/trace/jzfpdb1_m000_3150.trc:
ORA-01580: error creating control backup file /u01/app/oracle/11.2.0/db/dbs/
ORA-27056: could not delete file
Linux-x86_64 Error: 21: Is a directory
根据报错的信息,该错误是一个控制文件备份错误的问题,进入rman环境下,备份控制文件:
RMAN> backup current controlfile;
Starting backup at 11-DEC-15
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=3537 instance=jzfpdb1 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 12/11/2015 11:24:10
ORA-01580: error creating control backup file /u01/app/oracle/11.2.0/db/dbs/
ORA-27056: could not delete file
Linux-x86_64 Error: 21: Is a directory
可以看到,报出跟日志中同样的错误,说明问题的原因就在备份控制文件这个点上,查看rman备份参数:
RMAN> show all;
RMAN configuration parameters for database with db_unique_name JZFPDB are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/backup/%F';
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
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 '/u01/app/oracle/11.2.0/db/dbs/';
可以看到snapshot controlfile name参数的值指向了日志中错误提示出来的路径,从路径的目录来看,该参数指向的是一个文件夹目录,这是不正确的,一般情况下,该参数指向的应该是一个文件的绝对路径并且是指定文件名的,那么,我们尝试通过这种思路去解决这个问题,
在rman环境下修改snapshot controlfile name的值:
RMAN> configure snapshot controlfile name to '/u01/app/oracle/11.2.0/db/dbs/snapcf_jzfpdb1.f';
old RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/11.2.0/db/dbs/';
new RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/11.2.0/db/dbs/snapcf_jzfpdb1.f';
new RMAN configuration parameters are successfully stored
可以看到参数设置已成功的保存,接着我们在测试一下看是不是这个原因,用同样的方法备份控制文件:
RMAN> backup current controlfile;
Starting backup at 11-DEC-15
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
channel ORA_DISK_1: starting piece 1 at 11-DEC-15
channel ORA_DISK_1: finished piece 1 at 11-DEC-15
piece handle=+FRA/jzfpdb/backupset/2015_12_11/ncnnf0_tag20151211t112709_0.760.898169231 tag=TAG20151211T112709 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 11-DEC-15
Starting Control File and SPFILE Autobackup at 11-DEC-15
piece handle=/backup/c-1095298896-20151211-00 comment=NONE
Finished Control File and SPFILE Autobackup at 11-DEC-15
可以看到,控制文件已成功备份,没有再报出先前备份控制文件的错误,监控数据库告警日志文件,再也没发现有错误描述所报的错误。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31403259/viewspace-2140786/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31403259/viewspace-2140786/