martes, 24 de junio de 2008

Lógicos en diferente biblioteca

Una manera rápida de como averiguar qué archivos lógicos no están en la misma biblioteca que sus archivos físicos, es mediante la siguiente instrucción SQL, que accede al fichero QSYS/QADBFDEP :

SELECT DbFLib, DbFFil, DbFLDp, DbFFDp

FROM Qsys/QADbFDep

WHERE DbFLib <> DbFLDp

ORDER BY DbFLib, DbFFil, DbFLDp, DbFFDp


Una de las razones para controlar este tipo de situación es que, en caso de restauración de las bibliotecas, debe hacerse en el orden correcto, ya que sino podemos dejar de restaurar algún archivo lógico, y nos obligaría a realizar una segunda restauración con el parámetro *NEW.
Esto también se aplica a archivos con restricciones, aunque en este caso es recomendable no tener archivos dependientes en diferentes bibliotecas y evitemos, siempre que podamos, estas situaciones.

Por ejemplo, si restauramos desde las copias de seguridad, realizadas con *ALLUSR, las bibliotecas están salvadas en la cinta en orden alfabético, pero el archivo LIB1/INDEX1 no se restaurara, porque no encuentra el archivo físico FILE1, del que depende, ya que esta en la biblioteca LIB2 que aun no se ha restaurado.

Library File Type
LIB1 INDEX1 LF

LIB2 FILE1 PF
Publicar un comentario en la entrada