Nach dem Wiederherstellen einer Offline -Sicherung kann keine Verbindung zur DB2 -Datenbank hergestellt werden

dba.stackexchange https://dba.stackexchange.com/questions/15809

  •  22-10-2019
  •  | 
  •  

Frage

Dies gilt für DB2 9.7 Enterprise Server Edition auf AIX.

Ich hatte eine vollständige Offline -Sicherung mehrerer Datenbanken in unserer Instanz in einer Leistungsumgebung.

Ich wollte diese Datenbanken in unserer Integrationsumgebung wiederherstellen.

Ich habe den Befehl ausgeführt

db2 restore database database_name from 
/bkp/instance_name/OfflineBackups/RestorePoint/my_restore_point 
taken at 20120321103846 into database_name without prompting;

Für jede meiner Datenbanken (Änderung des Datenbanknamens und des Zeitstempels natürlich angemessen).

Jede Datenbank wurde nach DB2 erfolgreich wiederhergestellt. Wenn ich jedoch überprüfen möchte, ob die Datenbank tatsächlich wiederhergestellt wurde, was ich dachte, versuche ich, eine Verbindung zu einer Datenbank herzustellen, und ich erhalte den Fehler

    SQL1117N  A connection to or activation of database "database_name" cannot be made 
because of ROLL-FORWARD PENDING.  SQLSTATE=57019

Ich hatte keine Prozesstransaktionen in der vorherigen Datenbank, da alle Verbindungen ausgeschaltet wurden und die Datenbank für eine Offline -Sicherung ausgefallen war. Was kann ich tun?

War es hilfreich?

Lösung

Fand die Antwort hier.

Ich musste den Befehl ausführen

db2 rollforward db database_name to end of backup and complete;

Dies vermittelt alles in die Protokolle und legt die Datenbank in einen nicht mehr ausstehenden Zustand, wodurch eine Verbindung dazu führt. Ich musste dies für jede wiederhergestellte Datenbank tun.

BEARBEITEN: Fand dieses raffinierte Nugget, während er an einem A anwesend war DB2NAYSHOW Folge. Mit 9,7 FP2 führten sie eine Registrierungsvariable namens DB2_RESTORE_GRANT_ADMIN_AUTHORITY ein. Dies ist praktisch, wenn Sie ein Backup von einer Instanz in eine andere wiederherstellen, da es automatisch den Instanzbesitzer Secadm, DBADM, DataAccess und AccessCtrl für die restaurierten Datenbanken gewährt. Mit 9,7 FP5 ist die Einstellung dynamisch und erfordert kein Abprall der Instanz. Mir ist klar, dass meine ursprüngliche Frage nichts mit Sicherheit zu tun hat, aber sie kann angetroffen werden und dachte, dass dies ein praktisches Tidbit sein würde, das hier platziert wird.


Bearbeiten #2: Ich habe kürzlich herausgefunden, dass ich die Klausel aufnehmen konnte WITHOUT ROLLING FORWARD in meinem RESTORE Befehl. Dies hätte die Datenbank aus dem Roll -Forward -Status unmittelbar nach erfolgreicher Wiederherstellung genommen, was bedeuten würde, dass ich das dann nicht ausstellen hätte ROLLFORWARD DB Befehl.

Andere Tipps

Wenn sich der Sicherungstyp möglicherweise in Online -Backup befindet.

Verwenden Sie Log Path ("/db2Logtarget")

ZB:- db2 => rollforward db userdb bis zum Ende der Protokolle und vollständigen Überlaufprotokollpfad ("/home/user/target")

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit dba.stackexchange
scroll top