Inicio Foros Bases de datos Oracle Errores ORA-39001 ORA-39000 ORA-31640 ORA-27037 en impdp de Oracle [RESUELTO]

  • Este debate tiene 8 respuestas, 2 mensajes y ha sido actualizado por última vez el hace 2 años por Varios.
Viendo 9 entradas - de la 1 a la 9 (de un total de 9)
  • Autor
    Entradas
  • #46458
    Varios
    Moderador

    Hola, estoy intentando realizar un import en mi servidor de Oracle (en la versión 11g), ejecutando este comando:

    impdp system/contraseña@instanciaOracle REMAP_SCHEMA=FACTURACION:CONTABILIDAD DIRECTORY=BACKUPS LOGFILE=resultado.log DUMPFILE=contabilidad.dmp

    Y no me funciona, me muestra este error:

    Import: Release 11.2.0.1.0 – Production on Jue Abr 21 09:31:24 2022
    Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
    Conectado a: Oracle Database 11g Release 11.2.0.4.0 – 64bit Production
    ORA-39001: valor de argumento no válido
    ORA-39000: especificación de archivo de volcado errónea
    ORA-31640: no se ha podido abrir el archivo de volcado «/backup/contabilidad.dmp» para lectura
    ORA-27037: no se ha podido obtener el estado del archivo
    Linux-x86_64 Error: 2: No such file or directory

    ¿A qué puede deberse?

    #46459
    alonsojpd
    Superadministrador

    En primer lugar, comprueba que existe el directorio de origen del import en Oracle, puedes ejecutar esta consulta para comprobarlo:

    select OWNER, DIRECTORY_PATH
    from dba_directories
    where directory_name=’BACKUPS’;

    En tu comando usas el directorio BACKUPS, que debe existir en Oracle y tener una ruta del sistema operativo establecida.

    Dinos qué te devuelve la consulta anterior.

    #46460
    Varios
    Moderador

    Me devuelve esto:

    BACKUPS /backup

    #46461
    alonsojpd
    Superadministrador

    Perfecto, el siguiente paso es comprobar que existe la unidad /backups en el Linux de tu servidor Oracle.

    Haz un:

    ls -lah /backup

    Y dinos si existe esta unidad y qué permisos tiene.

    #46462
    Varios
    Moderador

    Sí que existe, indica que el propietario es el usuario «oracle» y el grupo «oinstall», con los permisos:

    -rw-r–r–

    #46463
    alonsojpd
    Superadministrador

    Perfecto, uno de los motivos del error que nos comentas podría ser por cuestión de permisos, pero en este caso parece que no.

    El siguiente paso es comprobar si existe el fichero DMP que intentas importar en la carpeta /backup, haz dentro de esta carpeta un ls -lah y dinos qué aparece (al menos si aparece el fichero contabilidad.dmp.

    #46464
    Varios
    Moderador

    Sí que aparece el fichero contabilidad.dmp, aparece esto:

    -rw-r—– 1 oracle oinstall 1G abr 21 00:27 CONTABILIDAD.DMP

    #46465
    alonsojpd
    Superadministrador

    Ten en cuenta que en Linux hay distinción entre mayúsculas y minúsculas, si el fichero en Linux tiene el nombre en mayúsculas CONTABILIDAD.DMP, en el comando impdp debes ponerle exactamente igual:

    impdp system/contraseña@instanciaOracle REMAP_SCHEMA=FACTURACION:CONTABILIDAD DIRECTORY=BACKUPS LOGFILE=resultado.log DUMPFILE=CONTABILIDAD.DMP

    #46466
    Varios
    Moderador

    ¡Resuelto! Efectivamente era eso, eran las mayúsculas.

    Hemos ejecutado el comando impdp cambiando el nombre a mayúsculas y ha funcionado a la perfección.

    ¡Muchas gracias!

Viendo 9 entradas - de la 1 a la 9 (de un total de 9)
  • Debes estar registrado para responder a este debate.