P8000/WEGA/contrib/ingres/dbs/sys/man/restore

205 lines
9.7 KiB
Plaintext

RESTORE(MUTOS) DABA16 RESTORE(MUTOS)
NAME
restore - Wiederherstellen nach einem DBBS- oder MUTOS-
Absturz
UEBERSICHT
restore [ -s ] [ -a ] [ -f ] [ +/-p ] [ +/-w ]
[ -S ] [ -P ] { dbname }
BESCHREIBUNG
Restore wird zum Wiederherstellen einer Datenbank verwendet,
nachdem ein DABA- oder MUTOS-Absturz auftrat. Das Kommando
sollte stets nach einer abnormalen Beendigung abgearbeitet
werden, um die Integritaet der Datenbank zu sichern.
Um restore zu benutzen, muessen Sie der DBA der Datenbank
oder der DABA-Systemverantwortliche (Verwendung des -s
Flags) sein.
Wurden keine Datenbanken spezifiziert, werden alle Datenban-
ken, fuer die Sie der DBA sind, zurueckgespeichert. Alle
Datenbanken werden bearbeitet, wenn der DABA-
Systemverantwortliche das -s Flag spezifiziert hat.
Wenn das -a Flag spezifiziert wurde, werden sie gefragt, be-
vor restore eine Serie von Aktionen ausfuehrt. Es ist rat-
sam, dieses Flag zu verwenden, wenn vermutet wird, dass die
Datenbank in schlechtem Zustand ist. Die Verwendung von
/dev/null als Eingabe mit dem -a Flag liefert eine Bericht
der Probleme der Datenbank.
Wenn waehrend des Rueckspeichers der Datenbank keine Fehler
auftraten, wird purge mit den gleichen Flags wie bei re-
store, aufgerufen, um ungewuenschte und temporaeren Files
zu entfernen.
Mit dem Flag -P wird der Aufruf von purge unterdrueckt. Wenn
purge erfolgreich beendet wurde, wird sysmod gerufen, mit -S
der Aufruf von sysmod unterdrueckt.
Restore kann mit den purge Flags -f und/oder -p aufgerufen
werden. Nicht zuzuordnende Files und verfallende Relationen
werden nicht entfernt, wenn nicht die entsprechenden Flags
gesetzt sind.
Im Falle einer unvollendeten destroy, create oder index Ope-
ration wird restore keine Files fuer teilweise erstellte
oder zerstoerte Relationen loeschen. Purge muss mit dem -f
Flag aufgerufen werden, um dies auszufuehren.
Restore sperrt waehrend seiner Arbeit die Datenbank. Wenn
eine Datenbank besetzt ist, wird restore das berichten und
dann zur Bearbeitung der naechsten Datenbank uebergehen.
Wenn die Standardeingabe kein Terminal ist, wird restore auf
die Freigabe der Datenbank warten. Wenn das -w Flag gesetzt
ist, wird restore in keinen Falle (auch nicht bei Standar-
deingabe) warten. Wenn +w gesetzt ist, wird stets gewartet.
Restore kann eine Datenbank nach einer Aenderungsoperation,
die das Fuellen des Stapel-Files beendet hat, wiederherstel-
len (komplettieren). Aenderungen, die dieses Stadium noch
nicht erreicht haben, sind zu wiederholen. Ebenso werden
modify Operationen, die das Wiederherstellen der Relation
beendet haben, (die relation- und die attribute-Relationen
sind noch zu aktualisieren), komplettiert.
Wenn destroy operierte, wird es stets komplettiert, waehrend
ein create stets ausgesetzt wird.
Nach dem Abbruch des Loeschens einer Relation mit einem In-
dex, kann es vorkommen, dass restore berichtet, dass ein Se-
kundaerindex ohne korrespondierende Primaerrelation gefunden
wurde.
Wenn waerend der Wiederherstellung ein Interrupt (Signal 2)
erhalten wird, erfolgt ein Abschliessen der bearbeiteten Da-
tenbank und die Bearbeitung der naechsten. Quit (Signal 3)
beendet die Arbeit von restore.
BEISPIEL[E]
restore -f dt
restore -a grants < /dev/null
DIAGNOSE
Um die Fehlernachrichten zu verstehen, muss man die Verbin-
dung zwischen den einzelnen Katalogen kennen.
Dazu folgende Ausfuerungen:
1. Eine Relation besteht aus genau einem MUTOS-File, einem
Eintrag im Relationen-Katalog "relation" und mehreren
Eintraegen im Attribut-Katalog (fuer jede Domaene ei-
nen):
Im Attribut-Katalog "attribute" wird fuer jede Domaene
der Name der Relation und deren Eigentuemer mit verwal-
tet. Die Kataloge sind im Systemkatalog wie normale Re-
lationen verzeichnet, nur dass sie im Relationen-
Katalog den Status Katalog-Relation erhalten.
2. Index-Relationen sind :
a) wie normale Relationen verzeichnet, nur dass sie
im Relationen-Katalog den Status INDEX erhalten.
b) Im Katalog "index" ist der Name der Index-Relation
und der Name der Primaerrelation verzeichnet.
c) Die Primaerrelation erhaelt im Relationen-Katalog
den Status Primaerrelation.
3. Sichten (virtuelle Relationen) sind :
a) wie normale Relationen verzeichnet, nur dass sie
im Relationen-Katalog den Status Sicht erhalten
b) Der Name und die Definition der Sicht sind im Ka-
talog "tree" abgelegt.
c) Der Name der Basisrelation der Sicht und der Name
der Sicht wird im Katalog "references" eingetragen
(pro Basisrelation ein Eintrag) und im
Relationen-Katalog wird fuer die Basisrelation ein
Verweiszaehler erhoeht.
4. Integritaeten :
a) Die Relationen, fuer die besodere Integritaets-
bedingungen gelten, erhalten im Katalog "relation"
den zusaetzlichen Status INTEG.
b) Im Katalog "integrities" sind die Namen der Rela-
tionen, die Namen der Relationen, fuer die beson-
dere Intigritaetsbedingungen geltenen, und ein
Verweis auf deren Definitionen im Katalog "tree"
enthalten.
c) Die Namen der Relationen, fuer die Integritaets-
bedingungen gelten, und die Definition der Inte-
gritaetsbedingungen sind im Katalog "tree" abge-
legt.
5. Zugriffsrechte :
a) Die Relationen, die Zugriffsrechte besitzen, er-
halten im Katalog "relation" den Status PROTECT.
b) Im Katalog "protect" sind die Namen der Relatio-
nen, fuer die besondere Zugriffsrechte gelten so-
wie die Verweise auf deren Definition im Katalog
"tree" enthalten.
c) Die Namen der Relationen, die Zugriffsrechte haben
und die Definitionen der Zugriffsrechte sind im
Katalog "protect" verzeichnet.
d) Enthaelt die Qualifikation der Befugnisdefinitio-
nen eine zusaetzliche Relation, werden im Katalog
"references" die Namen der zusaetzlichen Relatio-
nen und die Relation, fuer die die Befugnis defi-
niert wird, eingetragen. Im Katalog "relation"
wird fuer die zusaetzliche Relation ein Verweis-
zaehler erhoeht.
Alle Diagnosen werden durch ein Tupel einer der Systemrela-
tionen ergaenzt.
"No relation for attribute(s)" - Die aufgelisteten Attribute
besitzen keinen korrespondierenden Eintrag in der
relation-Relation.
"No primary relation for index" - Das angezeigte Tupel ist
ein Sekundaerindex, fuer den es keine Primaerrelation
gibt. Die Primaerrelation wurde wahrscheinlich zersto-
ert, und der Sekundaerindex blieb erhalten.
"No indexes entry for primary relation" - Das Tupel steht
fuer eine Primaerrelation und die relindxd-Domaene wird
auf Null gesetzt. Das ist das Ergebnis eines unvoll-
endeten destroy.
"No indexes entry for index" - Das Tupel steht fuer einen
Sekundaerindex, und der Index wird zerstoert werden.
Das ist das Ergebnis eines unvollendeten destroy.
"relname is index for" - Es wurde ein Index fuer eine Prima-
errelation gefunden, die nicht als indiziert gekenn-
zeichnet ist. Die Primaerrelation wird als indiziert
gekennzeichnet. Das ist wahrscheinlich das Ergebnis
einer unvollendeten index-Anweisung. Der Index wird
richtig erstellt aber nicht modifiziert werden.
"No file for" - Es gibt keine Daten fuer diese Relations-
Tupel und das Tupel wird geloescht. Bei einem -a Flag
wird das Tupel nicht entfernt und purge wird nicht auf-
gerufen.
"No secondary index for indexes entry" - Es wurde ein Ein-
trag in der indexes-Relation gefunden, fuer den kein
Sekundaerindex existiert (no relation relation tuple).
Der Eintrag wird geloescht.
SIEHE AUCH
define(ql), index(ql), indexr(mutos), purge(mutos),
sysmod(mutos)
FEHLERQUELLEN
Wenn keine Datenbanknamen spezifiziert wurden, werden nur
die im Directory data/base lokalisierten Datenbanken zu-
rueckgespeichert.