An ora-19563 error was encountered while testing the server to restore the database. As shown below
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of switch command at 04/08/2015 19:59:06
ORA-19563: header validation failed for file
[[email protected] ~]$ oerr ora 19563
19563, 00000, "%s header validation failed for file %s"
// *Cause: When opening the file to be placed in a copy or backup set,
// to be inspected, or used as the target for
// an incremental restore, its header was not
// recognized as a valid file header for a file of the indicated
// type (data file, archived log, or control file) belonging
// to the current database.
// *Action: Ensure that the correct files are being specified for the copy
// or backup operation.
After analysis, it is found that the two file names conflict, and the original database has two files invsubmat with the same name_ D18. DBF is located in different partitions. When I restore, due to the lack of space on the test server, I adjusted the recovery directory of the original file. (due to carelessness in adding data files, I dug a big hole for myself and jumped in!)
As shown below, two invsubmats appear in the / u04 / oradata / EPPs directory_ D19. DBF file. Just modify the file recovery path in the set command.
run
{
.................................................................
set newname for datafile 105 to "/u04/oradata/epps/invsubmat_ d18.dbf";
.................................................................
set newname for datafile 109 to "/u04/oradata/epps/invsubmat_ d18.dbf";
set newname for datafile 121 to "/u04/oradata/epps/ndotbs03.dbf";
set newname for datafile 122 to "/u04/oradata/epps/undotbs04.dbf";
restore database ;
switch datafile all;
}
Change to the following, restore successfully!
run
{
.................................................................
set newname for datafile 105 to "/u04/oradata/epps/invsubmat_ d18.dbf";
.................................................................
set newname for datafile 109 to "/u04/oradata/epps/invsubmat_ d20.dbf";
set newname for datafile 121 to "/u04/oradata/epps/ndotbs03.dbf";
set newname for datafile 122 to "/u04/oradata/epps/undotbs04.dbf";
restore database ;
switch datafile all;
}
ORA-19563: header validation failed for file
An ora-19563 error was encountered while testing the server to restore the database. As shown below
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of switch command at 04/08/2015 19:59:06
ORA-19563: header validation failed for file
[[email protected] ~]$ oerr ora 19563
19563, 00000, "%s header validation failed for file %s"
// *Cause: When opening the file to be placed in a copy or backup set,
// to be inspected, or used as the target for
// an incremental restore, its header was not
// recognized as a valid file header for a file of the indicated
// type (data file, archived log, or control file) belonging
// to the current database.
// *Action: Ensure that the correct files are being specified for the copy
// or backup operation.
After analysis, it is found that the two file names conflict, and the original database has two files invsubmat with the same name_ D18. DBF is located in different partitions. When I restore, due to the lack of space on the test server, I adjusted the recovery directory of the original file. (due to carelessness in adding data files, I dug a big hole for myself and jumped in!)
As shown below, two invsubmats appear in the / u04 / oradata / EPPs directory_ D19. DBF file. Just modify the file recovery path in the set command.
run
{
.................................................................
set newname for datafile 105 to "/u04/oradata/epps/invsubmat_ d18.dbf";
.................................................................
set newname for datafile 109 to "/u04/oradata/epps/invsubmat_ d18.dbf";
set newname for datafile 121 to "/u04/oradata/epps/ndotbs03.dbf";
set newname for datafile 122 to "/u04/oradata/epps/undotbs04.dbf";
restore database ;
switch datafile all;
}
Change to the following, restore successfully!
run
{
.................................................................
set newname for datafile 105 to "/u04/oradata/epps/invsubmat_ d18.dbf";
.................................................................
set newname for datafile 109 to "/u04/oradata/epps/invsubmat_ d20.dbf";
set newname for datafile 121 to "/u04/oradata/epps/ndotbs03.dbf";
set newname for datafile 122 to "/u04/oradata/epps/undotbs04.dbf";
restore database ;
switch datafile all;
}
ORA-19563: header validation failed for file