Hoy veremos un error bastante comun cuando intentamos hacer un rman remoto en un entorno windows
Supongamos tenemos un servidor windows A y queremos hacer un backup de RMAN depositado en otro servidor windows B
rman target / nocatalog cmdfile rman_windows.cmd
Donde el fichero rman_windows.cmd es
run {
allocate channel c1 type disk format '\\B\BCKORACLE\rman_pruebas%U';
backup database;
}
En función de los permisos que tengamos en el servidor B, obtendremos un error:
canal c1: iniciando parte 1 en 18/08/13 canal liberado: c1 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03009: fallo del comando backup en el canal c1 en 08/18/2013 09:12:55 ORA-19504: fallo al crear el archivo "\\B\BCKORACLE\rman_pruebas08OH_1" ORA-27040: error de creacion de archivo, no se ha podido crear OSD-04002: no se ha podido abrir el archivo O/S-Error: (OS 5) Acceso denegado. Recovery Manager terminado.
Como podemos ver en el error, leyendo siempre de abajo a arriba es un error de acceso de sistema operativo, tal y como indica la nota (Doc ID 145843.1) How to Configure RMAN to Write to Shared Drives on Windows NT/2000/2003 , Oracle necesita tener permisos de SYSTEM sobre el punto de red en el que va a escribir, por tanto tendremos que dar full control al usuario con el que se este ejecutando la base de datos ( o el script de lanzamiento) sobre el recurso remoto.
Un consejo para los windows 2003 en adelante es el no utilizar nombres locales de redes mapeadas, sino que es mas conveniente el uso de nombres de red genérico.
NOTA: En caso de ser una carpeta compartida por entorno de red de windows habrá que dar control total a el system de la máquina donde se ejecuta el Oracle, esto se puede haer con permisos a MI_DOMINIO\A$ donde MI_DOMINIO es el dominio y A el nombre del servidor






