Quand on effectue une sauvegarde DB2 avec la commande BACKUP on doit restaurer la base sur un serveur avec la même version de DB2, le même Fixpak et la même architecture (x86, power...). Par
contre il est possible de restaurer sur des version d'OS différentes.
Si on utilise l'option COMPRESS lors de la sauvegarde, DB2 stocke la librairie '.so' utilisée dans le fichier de sauvegarde, ce qui permet de ne pas avoir à se préocuuper de la disponibilité
de la librairie (et donc de l'algorithme) de compression sur la machine cible.
$ db2 BACKUP DATABASE CENTRAL TO "/tmp" WITH 2 BUFFERS BUFFER 1024
PARALLELISM 2 COMPRESS WITHOUT PROMPTING
Par contre quand on restaure la sauvegarde sur une version 'OS différente avec un niveau de librairies différent, la restauration peut mal se passer si on utilisé l'option COMPRESS lors de la
sauvegarde.
$ db2 RESTORE DATABASE CENTRAL FROM /tmp TAKEN AT 20071107095025 INTO CENTRAL
SQL2071N An error occurred while accessing the shared library
"/home/db2inst1/db2inst1/NODE0000/SQL00002/libdb2compr.so". Reason code: "1".
La commande db2 sur le système cible n'a pas pu charger la librairie présente dans le fichier de sauvegarde car les versions de librairies C sur le système cible sont diffférentes. En pareil cas on
utilise l'option COMPRLIB:
$ db2 RESTORE DATABASE CENTRAL FROM /tmp
TAKEN AT 20071107095025 INTO CENTRAL
COMPRLIB /opt/IBM/db2/V8.1/lib/libdb2compr.so
DB20000I The RESTORE DATABASE command completed successfully.
Voilà, comme on dit:"j'espère que ça aide".
par TripleZero
publié dans :
Quand 1+1=10
0
recommander
Commentaires Récents