Forum Stats

  • 3,759,037 Users
  • 2,251,494 Discussions
  • 7,870,477 Comments

Discussions

How to disable RMAN backup location automatic uppercase?

User_YNBM2
User_YNBM2 Member Posts: 3 Green Ribbon
edited Aug 20, 2021 4:49PM in Recovery Manager (RMAN)

Hello,

I am trying to save the backups on a software, running on windows, that creates a winfsp mount point that has case sensitive paths.

When running my RMAN backup script, it converts my disk backup locations to uppercase, which causes an error "O/S-Error: (OS 3) The system cannot find the path specified." because the mount point returns a Path Not Found error code.

Is it possible to disable this uppercase feature?

My script (backup.rman):

run {
	CONFIGURE DEFAULT DEVICE TYPE TO DISK;
	CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT = "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_df_%d_%c_%D%M%Y_%t_s%s_s%p";
	CONFIGURE CONTROLFILE AUTOBACKUP ON;
	CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_cf_%F";
	CONFIGURE BACKUP OPTIMIZATION ON;
	BACKUP DATABASE PLUS ARCHIVELOG DELETE INPUT;
	CROSSCHECK BACKUP;
	DELETE NOPROMPT EXPIRED BACKUP;
	DELETE NOPROMPT OBSOLETE;
	CROSSCHECK ARCHIVELOG ALL;
	DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;
}


Thanks in advance.


Edit:


**********************************
************* .bat file: *************
**********************************
set oracle_sid=orcl
rman target / cmdfile='C:\Users\OracleUser\Documents\orcl_backup\backup.rman' log='C:\Users\OracleUser\Documents\orcl_backup\backup.log'



**********************************
*********** Backup Log: ***********
**********************************
Recovery Manager: Release 19.0.0.0.0 - Production on Thu Aug 19 18:26:46 2021
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.

connected to target database: ORCL (DBID=1608699119)

RMAN> run {
2> 	CONFIGURE DEFAULT DEVICE TYPE TO DISK;
3> 	CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT = "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_df_%d_%c_%D%M%Y_%t_s%s_s%p";
4> 	CONFIGURE CONTROLFILE AUTOBACKUP ON;
5> 	CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_cf_%F";
6> 	CONFIGURE BACKUP OPTIMIZATION ON;
7> 
8> 	BACKUP DATABASE PLUS ARCHIVELOG DELETE INPUT;
9> 
10> 	CROSSCHECK BACKUP;
11> 	DELETE NOPROMPT EXPIRED BACKUP;
12> 	DELETE NOPROMPT OBSOLETE;
13> 	CROSSCHECK ARCHIVELOG ALL;
14> 	DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;
15> 
16> }
17> 
using target database control file instead of recovery catalog
old RMAN configuration parameters:
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
new RMAN configuration parameters:
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
new RMAN configuration parameters are successfully stored

old RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT  "C:\Users\user\Downloads\ORACLE_BACKUP\ora_df_%d_%c_%D%M%Y_%t_s%s_s%p";
new RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT  "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_df_%d_%c_%D%M%Y_%t_s%s_s%p";
new RMAN configuration parameters are successfully stored

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO "C:\Users\user\Downloads\ORACLE_BACKUP\ora_cf_%F";
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_cf_%F";
new RMAN configuration parameters are successfully stored

old RMAN configuration parameters:
CONFIGURE BACKUP OPTIMIZATION ON;
new RMAN configuration parameters:
CONFIGURE BACKUP OPTIMIZATION ON;
new RMAN configuration parameters are successfully stored


Starting backup at 19-AUG-21
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=138 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=257 device type=DISK
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=41 RECID=44 STAMP=1081016808
channel ORA_DISK_1: starting piece 1 at 19-AUG-21
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 08/19/2021 18:26:49
ORA-19504: failed to create file "C:\USERS\USER\VAWLT\FOLDER\ORACLE_BACKUP\ORA_DF_ORCL_1_19082021_1081016808_S140_S1"
ORA-27040: file create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.
channel ORA_DISK_1 disabled, job failed on it will be run on another channel
channel ORA_DISK_2: starting archived log backup set
channel ORA_DISK_2: specifying archived log(s) in backup set
input archived log thread=1 sequence=41 RECID=44 STAMP=1081016808
channel ORA_DISK_2: starting piece 1 at 19-AUG-21
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 08/19/2021 18:26:50
ORA-19504: failed to create file "C:\USERS\USER\VAWLT\FOLDER\ORACLE_BACKUP\ORA_DF_ORCL_1_19082021_1081016809_S141_S1"
ORA-27040: file create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.

Recovery Manager complete.


Answers

  • EdStevens
    EdStevens Member Posts: 28,467 Gold Crown

    Show us the entire thing - not only the rman scriplt, but the command line that invokes rman, and the full, complete, exact (copy and paste) output.

  • User_YNBM2
    User_YNBM2 Member Posts: 3 Green Ribbon

    Hey @EdStevens ,

    I edited the initial post with the bat script and the backup log.

    As you can see, the path that i provide is the correct path, with lower and uppercase letters. However, at the end of backup log, you can see that RMAN automatically uppercases the paths. RMAN sends a file creation request inside dir /FOLDER, and winfsp returns a file creation/path not found error because he only knows dir "/folder".

    Another note: OracleUser is a windows user with administrator privileges. He is allowed to backup to a path inside the 'user' space.

  • EdStevens
    EdStevens Member Posts: 28,467 Gold Crown

    Well, since this is windows, there is no case sensitivity in file/directory names. I don't know why the log is reporting it back in all caps, but I really don't think that is the issue. I'd say you are either specifying a directory that doesn't actually exist, or you have a permissions problem.

    BTW, code and output are MUCH easier to read when you format it. Please see https://community.oracle.com/tech/apps-infra/kb/articles/12-format-text

  • User_YNBM2
    User_YNBM2 Member Posts: 3 Green Ribbon

    @EdStevens , thank you for your answer, and sorry for the formatting.

    Yeah, it's true that windows isn't case sensitive with file names, and that's why i believe RMAN converts the locations to uppercase and it just works, but not in this case.

    I am pretty sure it is not a permissions problem, because I already tested writing the backup to the same mount point but using a folder with uppercase name instead (see below) and "cannot find the path specified" error was gone, but this isn't a solution I can rely on.

    old RMAN configuration parameters:
    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT  "C:\Users\user\Vawlt\folder\ORACLE_BACKUP\ora_df_%d_%c_%D%M%Y_%t_s%s_s%p";
    new RMAN configuration parameters:
    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT  "C:\Users\user\Vawlt\UPPERCASE\ORACLE_BACKUP\ora_df_%d_%c_%D%M%Y_%t_s%s_s%p";
    new RMAN configuration parameters are successfully stored