jueves, 6 de septiembre de 2007

Getting Oracle 10 datapump full path

This week I have been working on a bash script and I had the need to know the full path of my Oracle 10 datapump directory (directories).

I have found some useful links with general info about datapumps, how to create them, etc, but none of them told me how to find out their defined paths...

Navigating the dictionary information through the PL/SQL Developer trees I have found the view SYS.ALL_DIRECTORIES which contains what I wanted. I have just take a look to this view definition and... this is how I finally get my datapump dirs:

...

export IFS="

"

export DATAPUMP_DIRS=`

echo "

set heading off;

set feedback off;

select d.os_path

from sys.obj$ o, sys.dir$ d

where o.obj# = d.obj#

and o.type# = 23;

" | sqlplus -S $USER/$PASSWORD

`

...


3 Comentarios:

Anónimo dijo...

Hoy después de una conversación con Jorge y tras una búsqueda en google me encontrado con tu Blog...Y me gusta.

En todo caso te propongo esto:

SELECT DIRECTORY_PATH
INTO :DIRECT1
FROM DBA_DIRECTORIES
WHERE DIRECTORY_NAME ='DATA_PUMP_DIR';

como alternativa más razonable. En la versión 10 casi todo tiene un "Directorio" Oracle preconfigurado.

Un Saludo

JLS

Pere Moltó Agut dijo...

Gracias por el piropo y por la aportación, JL.
He intentado encontrar un hueco para comprobar la salida de tu solución pero he tenido un día cruzado. A ver mañana...
Lo dicho, gracias y vuelve por aquí cuando quieras.

Pere Moltó Agut dijo...

Probé tu SELECT y funciona perfectamente, JL.
Saludos y gracias.