Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Erzeugen einer Fremdkopie mit dem BS2000-Kommando COPY-FILE

Zum Erzeugen einer Fremdkopie einer gesamten Datenbank mit BS2000-Mitteln sind folgende Schritte erforderlich:

  1. Mit der Administratoranweisung SET-SQL-DB-CATALOG-STATUS ... STATUS=FREE veranlasst der SESAM/SQL-Systemverwalter den DBH, die Originaldatenbank freizugeben (siehe Handbuch „ Datenbankbetrieb“).

  2. Mit dem Kommando COPY-FILE erstellt der Datenbankverwalter auf BS2000-Ebene Kopien aller Space-Dateien, d.h. des Catalog-Space, aller Anwender-Spaces und der CAT-REC-Datei. Die Dateinamen der Kopien müssen den Konventionen von SESAM/SQL genügen und lauten für:

    Catalog-Space


    :catid:benutzerkennung.catalog.CATALOG

    Anwender-Spaces


    :catid:benutzerkennung.catalog.space

    CAT-REC-Datei


    :catid:catalog.CAT-REC

    catid

    bezeichnet die BS2000-Katalogkennung.

    benutzerkennung

    bezeichnet die BS2000-Benutzerkennung, die für alle kopierten
    Spaces dieselbe sein muss.

    catalog

    bezeichnet den physikalischen Datenbanknamen des Datenbank
    Duplikats.

    space

    bezeichnet den Namen der Kopie eines Anwender-Space. Für alle
    Anwender-Spaces muss space bei Original und Duplikat jeweils
    gleich sein.

  3. Mit der Administrationsanweisung
    SET-SQL-DB-CATALOG-STATUS ... STATUS=ACTIVE trägt der Systemverwalter die Originaldatenbank wieder in das SQL-Datenbankverzeichnis der laufenden DBH-Session ein.

Einzelne Anwender-Space können gesichert werden, indem der Space mit CLOSE SPACE bzw. INTR CLOSE geschlossen und dann mit COPY-FILE gesichert wird. Um zu verhindern, dass SESAM/SQL den Space bei einem Zugriff sofort wieder öffnet, sollten die Anweisungen innerhalb einer Locksequenz eingegeben werden.

Mit den Administrationsanweisungen PREPARE-FOREIGN-COPY und END-FOREIGN-COPY kann ein „copy pending“ aufgehoben werden, das durch eine der Fremdkopie vorausgegangene Utility-Anweisung entstanden ist. Dazu setzen Sie vor Schritt 1 die Anweisung PREPARE-FOREIGN-COPY und nach Schritt 3 die Anweisung END-FOREIGN-COPY ab.


Beispielprozedur

In der folgenden Prozedur wird mit dem Kommando COPY-FILE eine Kopie der Datenbank erzeugt:

/ASSIGN-SYSDTA  TO-FILE=*SYSCMD
/START-SESADM
//START-DBH-ADMINISTRATION ...
//BEGIN-LOCK-SEQUENCE
//PREPARE-FOREIGN-COPY SELECT=*LOGICAL(CATALOG-NAME=...)
//HOLD-PROGRAM
/COPY-FILE ...
/RESUME-PROGRAM
//END-FOREIGN-COPY SELECT=*LOGICAL(CATALOG-NAME=...)
//END-LOCK-SEQUENCE
//END

Die kopierten Datenbankdateien können jetzt gesichert werden.