15.2.4 Kommandos rbf, sreport und report
15.3.1 Das Dienstprogramm accessdb
15.3.2 Das Dienstprogramm catalogdb
15.3.3 Dienstprogramme createdb und destroydb
15.3.4 Dienstprogramme ckpdb und
rollforwarddb
15.3.5 Das Dienstprogramm unloaddb
In diesem Kapitel werden
verschiedene Aspekte beschrieben,
die
zur Umgebung des INGRES-Systems
gehören. Zuerst werden
die
Umgebungsvariablen
dargestellt und erörtert.
Danach
werden die wichtigsten
Betriebssystem-Kommandos beschrieben.
Bei der Installation des
INGRES-Systems ist es notwendig,
die
ganze INGRES-Umgebung, die
aus vielen Dateien
besteht, zu definieren. In
der Anwendungsphase eines
INGRES-Systems müssen
die veschiedenen Modi,
in denen
INGRES-Daten bearbeitet werden, festgelegt werden. Diese
beiden Aktivitäten werden mit
Hilfe der Umgebungsvariablen
durchgeführt.
Die wichtigsten Umgebungsvariablen,
die die Installation des
INGRES-Systems beeinflussen, sind:
- II_SYSTEM,
- II_DATABASE,
- II_CHECKPOINT,
- II_JOURNAL und
- II_LOG_FILE .
Variable |
Funktion |
II_SYSTEM |
Diese Umgebungsvariable wird von INGRES-Subsystemen verwendet, um den Installationsort des Datenbank-Managementsystems zu finden. Weil II_SYSTEM keinen voreingestellten Wert hat, muß jeder Anwender den Wert dieser Umgebungsvariablen explizit setzen. Beispiel (UNIX-Bourne Shell) II_SYSTEM=/u/install export II_SYSTEM (In diesem Beispiel
wird angenommen, daß sich
das DBMS von INGRES im
Dateiverzeichnis /u/install befindet.) |
II_DATABASE |
Die Umgebungsvariable II_DATABASE definiert
das physikalische Gerät, in dem die Datenbanken eines INGRES-Systems gespeichert sind. Bei den meisten Rechnern ermöglicht INGRES die
Verwendung eines logischen Namens, der dann einem physikalischen Gerät
zugewiesen werden kann. Durch die Änderung der Verbindung zwischen dem
logischen und dem physikalischen Namen ist es möglich, einen neuen
Speicherungsort für Datenbanken eines Systems zu bestimmen, ohne das ganze System neuinstallieren zu müssen.(In
UNIX ist es möglich, mit Hilfe des Dienstprogramms createdb, den
Speicherungsort der neuzuerstellenden Datenbanken zu ändern.) Die in Kapitel
11 beschriebene Master-Datenbank iidbdb
ist an dem durch II_DATABASE definierten
Speicherungsort gespeichert. Diese
Datenbank ist gleichzeitig die einzige, deren Speicherungsort nicht geändert werden kann. |
II_CHECKPOINT |
II_CHECKPOINT definiert den
Speicherungsort
der Sicherungskopie einer Datenbank. Diese Umgebungsvariabale wird
während des Installationsvorgangs vom INGRES-System gesetzt und kann nicht nachträglich geändert werden. Dem INGRES-Systemverwalter wird
dringend empfohlen, die Sicherungskopie einer Datenbank nicht gemeinsam mit der
Datenbank zu speichern. Falls die Anlage nur ein Plattenlaufwerk hat, sollte
der Speicherungsort der Sicherungskopie ein Magnetbandgerät sein. |
II_JOURNAL |
II_JOURNAL definiert den Speicherungsort
der Journal-Datei. Diese Umgebungsvariable wird während des
Installationsvorgangs des INGRES-Systems gesetzt und kann nicht nachträglich
geändert werden. |
Diese Umgebungsvariable definiert den
Speicherungsort der Log-Datei des ganzen INGRES-Systems. II_LOG_FILE wird
auch während des Installationsvorgangs des INGRES-Systems gesetzt. |
Eine weitere Gruppe von
Umgebungsvariablen beeinflußt
das
Format der verschiedenen
INGRES-Datentypen sowie den
Bildschirmtyp eines Rechners. Zu
dieser Gruppe gehören:
- II_DECIMAL,
- II_MONEY_FORMAT,
- II_MONEY_PREC,
- II_DATE_FORMAT und
- TERM_INGRES .
Variable |
Funktion |
II_DECIMAL |
Die Umgebungsvariable II_DECIMAL definiert
das Trennzeichen zwischen Vor- und Nachkommastellen einer Dezimalzahl. Die
einzigen zugelassenen Zeichen
sind "." und ",", wobei der Punkt die
Voreinstellung ist. |
II_MONEY_FORMAT |
Diese Umgebungsvariable legt den
Währungsbezeichner eines Geldbetrages fest. Sie besteht aus zwei Teilen, die
durch das Zeichen ":"
getrennt sind. Der erste Teil definiert die Position des Währungsbezeichners
wobei "L" ("leading") den Währungsbezeichner am Anfang
und "T" ("trailing") den Währungsbezeichner am Ende des
Geldbetrages setzt. Der zweite Teil der Umgebungsvariablen setzt den
tatsächlichen Wert für den
Währungsbezeichner fest. |
II_MONEY_PREC |
II_MONEY_PREC definiert die Anzahl der
Nachkommastellen eines Geldbetrages. Die möglichen Angaben sind 0,1 und 2
wobei 2 die Voreinstellung ist. |
II_DATE_FORMAT |
Mit der Umgebungsvariablen II_DATE_FORMAT
wird das Ausgabeformat eines Datums festgelegt. Die Voreinstellung für das
Ausgabeformat ist dd-mmm-yyyy . Das Eingabeformat kann folgende drei Formen haben dd-mmm-yyyy,
mm/dd/yy und mmddyy . Das Setzen der Umgebungsvariablen II_DATE_FORMAT
bewirkt das Ersetzen eines der drei Formate durch das angegebene Format. |
Mit dieser Umgebungsvariablen wird der
Bildschirmtyp festgelegt. Die richtige Einstellung von TERM_INGRES ist
besonders für die formatgesteuerten INGRES-Komponenten wie VIFRED und QBF von
Bedeutung. |
In den Kapiteln 3 bis 5 haben
wir das formatgesteuerte
Menüsystem mit
allen Funktionen wie
INGRES/FORMS,
INGRES/REPORTS usw. dargestellt. Eine andere Möglichkeit,
diverse INGRES-Subsysteme
aufzurufen, bieten die
Betriebssystemkommandos von INGRES.
Das erste Betriebssystemkommando, das
schon in Kapitel 3
verwendet wurde, ist ingmenu. Dieses Kommando
ermöglicht
den
Aufruf des formatgesteuerten Menüsystems von INGRES und
hat folgende Form
ingmenu
[-e] db_name [-uben]
db_name ist der Datenbankname. Der optionale Schalter "-e"
ruft ingmenu im sogenannten leeren Modus auf. In diesem
Modus werden alle Masken, die
im Zusammenhang mit
den
INGRES-Subsystemen stehen, leer am
Bildschirm ausgegeben,
um
dem Benutzer die
Möglichkeit zu geben,
spezifische
Objektnamen eintragen zu können.
Der
Schalter "-u" ist dem
Systemadministrator bzw. dem
DBA
für die Datenbank db_name
vorbehalten, um ingmenu als
Benutzer ben aufrufen zu
können.
Mit
dem Kommando qbf
wird das INGRES-Subsystem QBF direkt
aufgerufen. Die Syntax dieses
Kommandos ist
qbf db_name [-s] [-mmodus] [-uben]
[-f|-j|-t|-l] obj_name
db_name ist der Datenbankname. Der
Schalter "-s" unterdrückt
alle Meldungen bei
der Ausgabe am
Bildschirm. Mit dem
Schalter "-m" wird die
QBF-Funktion JoinDef umgangen und mit
modus eine der vier
Unterfunktionen Retrieve, Append, Update
oder All angegeben. Der INGRES-Systemverwalter oder
der DBA
können den Schalter "-u" verwenden, um das QBF als Benutzer
ben aufzurufen.
obj_name ist ein QBF-Name bzw. der Name einer Tabelle oder
eines JoinDefs. Welches
von diesen Objekten
tatsächlich
ausgesucht wird, wird mit einem der Schalter "-f", "-j",
"-t" oder "-l" genau festgelegt. "-f" steht für einen
QBF-Namen,
"-j" für einen
JoinDef, "-t" für eine Tabelle
und "-l" für
eine fest vorgeschriebene Suche nach dem
Objekt obj_name (zuerst
wird obj_name unter dem QBF-Namen,
dann unter JoinDefs und
am Ende unter dem Tabellennamen
gesucht). Falls keiner der
vier Schalter angegeben wird,
wird standardmäßig angenommen, daß obj_name der Name einer
Tabelle ist.
Mit dem Kommando vifred
wird das INGRES-Subsystem VIFRED
direkt aufgerufen. Die Syntax dieses
Kommandos ist
vifred db_name [obj_name [-f|-t|-j]] [-e] [-uben]
db_name ist der Datenbankname. Der Schalter
"-u" ist dem
Systemverwalter und dem
DBA vorbehalten, um
VIFRED als
Benutzer ben aufzurufen. obj_name
ist entweder der Name
einer existierenden Maske
oder der Name
einer Tabelle,
bzw. eines JoinDefs.
Welches dieser Objekte
tatsächlich
ausgesucht wird, wird entweder
mit dem Schalter
"-f"
(Maske), oder "-t" (Tabelle)
oder mit "-j" (JoinDef)
genau festgelegt. Falls keiner dieser Schalter angegeben
wird, wird standardmäßig
angenommen, daß es sich um eine
Maske handelt.
Mit dem Schalter "-e"
wird eine leere Maske angezeigt
und
dem Benutzer die Möglichkeit gegeben,
den Namen des Objektes
selbst einzutragen.
Die wichtigsten INGRES-Kommandos bezüglich der
Erstellung
und des Ablaufs von
Listenprogrammen sind rbf, sreport und
report.
Mit
dem Kommando rbf
wird das INGRES-Subsystem RBF direkt
aufgerufen. Die Syntax dieses
Kommandos ist
rbf [-s] [-uben] [-r]|[-m[modus]] [-lmax_länge]
[-e] db_name obj_name
db_name ist ein Datenbankname,
während obj_name entweder
der Name eines
Listenprogramms oder einer
Tabelle ist.
Der
Schalter "-s" unterdrückt
alle Ausgabemeldungen am
Bildschirm. Der INGRES-Systemverwalter oder der DBA können
den Schalter "-u" verwenden, um das
Subsystem RBF als
Benutzer ben
aufzurufen. Der Schalter
"-r" teilt dem
Subsystem mit,
daß es sich bei obj_name um den
Namen eines
Listenprogramms handelt. Falls der
Schalter "-r" ausgelassen
wird, sucht RBF zuerst nach dem
Listenprogramm obj_name und,
falls es nicht existiert, nach dem
gleichen Tabellennamen.
Beim Vorhandensein eines solchen Tabellennamens wird ein
Standard-Listenprogramm für diese
Tabelle erstellt.
Mit
dem Schalter "-m" wird
ein Standard-Listenprogramm für
die
Tabelle obj_name
erstellt. Die Angabe modus beschreibt
die Form des Standard-Listenprogramms näher. Sie kann
die
Werte wrap, column
oder block annehmen. Der
Schalter "-l"
definiert die maximale Länge einer Listenprogrammzeile. Der
voreingestellte Wert für
max_länge hängt vom Bildschirmtyp
ab und beträgt meistens 80. Der
Schalter "-e" verursacht den
Aufruf der Funktion Report Catalog
mit einer leeren Maske.
Mit dem Kommando
sreport
[-s] [-uben] db_name listen_quelle
wird die Definition eines
mit dem Subsystem Report Writer
erstellten Listenprogramms in
die Datenbank geschrieben.
Mit
dem Schalter "-s" werden alle Ausgabemeldungen am
Bildschirm unterdrückt. Der INGRES-Systemadministrator und
der
DBA können mit dem Schalter "-u" das Kommando report
als Benutzer ben aufrufen.
db_name ist der
Name der
Datenbank, auf die sich das Listenprogramm bezieht, während
listen_quelle der Name der
Datei ist, die das Listenprogramm
enthält.
Nachdem ein Listenprogramm mit
einem der beiden Kommandos
rbf oder sreport
erstellt wurde, kann es mit dem
Kommando
report ausgeführt werden. Zusätzlich dazu kann report auch
ein
Standard-Listenprogramm ausführen.
Die Syntax dieses
Kommandos ist
report [-fdatei_name] [-s] [-uben] [-r|[-mmodus]]
[-lmax_laenge] db_name obj_name [param_1=wert_1,...]
Die
für das Kommando report existierenden Schalter haben
dieselbe Bedeutung wie die
gleichnamigen Schalter des
Kommandos rbf. report
ermöglicht zusätzlich die
direkte
Angabe eines oder mehrerer
Parameterwerte, die beim Ablauf
des Listenprogramms den
entsprechenden Parametern zugewiesen
werden.
Mit dem Kommando
vigraph [-b] [-ggraph_name] [-e] [-uben] db_name
wird der grafische Editor
direkt aufgerufen. db_name
kennzeichnet die Datenbank, deren Daten für
die Grafik
verwendet werden sollen. Mit
dem Schalter "-b" wird
die
VIGRAPH-Sitzung mit einer leeren Grafik eröffnet, während
"-g" zur Sitzungseröffnung die Grafik
namens graphik_name
anzeigt.
Mit dem Schalter "-e" wird die
VIGRAPH-Sitzung mit der
Funktion Catalog Frame eröffnet,
und die Maske
dieser
Funktion erscheint leer am
Bildschirm. Schließlich,
können mit dem Schalter
"-u" der
DBA und der
INGRES-Systemadministrator VIGRAPH
als Benutzer ben starten.
Mit
dem Kommando sql
wird das INGRES-DBMS aufgerufen. Die
Syntax dieses Kommandos ist
sql [schalter_liste] [<eingabe_dat]
[>ausgabe_dat] db_name
db_name ist
der Name einer
existierenden Datenbank.
schalter_liste kann einen oder
mehrere Schalter enthalten,
von welchen wir die wichtigsten
erörtern werden.
Mit
dem Schalter "+U"
bzw. "-U" wird
dem Benutzer die
Erlaubnis, den INGRES-Systemkatalog
zu ändern, erteilt bzw.
entzogen. Die Voraussetzung, den Schalter "+U" benutzen zu
dürfen, wird mit dem
Dienstprogramm accessdb
erteilt. Die
Voreinstellung ist "+U", und es wird
dringend empfohlen,
den Schalter "+U" nicht zu
benutzen, weil die
Änderung
der
Systemtabellen sehr gefährlich
sein kann. Z.B. würde
das
Löschen interner Informationen
über eine Tabelle unter
Umständen das weitere Arbeiten mit dieser Tabelle und damit
mit den ganzen Datenbankanwendungen
unmöglich machen.
Mit
"-uben" kann der
DBA als Benutzer ben das
INGRES-DBMS
aufrufen. Der Schalter
"-vzeichen" legt den Spaltenbegrenzer
für die Ausgabe auf dem
Bildschirm bzw. auf dem
Drucker
fest. Die Voreinstellung ist
"|". Mit dem Schalter "-l" kann
ein Benutzer die Datenbank db_name exklusiv
sperren. Eine
schon eröffnete Datenbank kann in diesem Fall nicht benutzt
werden.
Mit dem Schalter "+s" werden die Ausgabemeldungen am
Bildschirm ausgegeben. Der alternative Schalter "-s"
unterdrückt alle Meldungen. Falls keiner dieser Schalter
angegeben ist, wird "+s"
angenommen.
Mit
der Angabe
"<eingabe_dat" wird die SQL-Anweisungsfolge
aus der Datei eingabe_dat geholt
und ausgeführt. Diese
Datei soll alle notwendigen Anweisungen enthalten, um eine
INGRES-Sitzung ausführen zu
können. Dementsprechend wird
mit ">ausgabe_dat" die Ausgabe
vom Bildschirm zur
Datei
ausgabe_dat umgeleitet.
Beispiel 15.1
sql beispiel <create >ausgabe
In Beispiel 15.1 werden alle Anweisungen der
INGRES-Sitzung
aus der Datei create geholt
und die entsprechende Ausgabe in
die Datei ausgabe umgeleitet.
INGRES-Dienstprogramme sind
fester Bestandteil der
INGRES-Software. Sie
unterstützen die Benutzer
bei der
Bewältigung wichtiger
Aufgaben, wie der Erstellung
der
Diagnoseinformationen aus einer
Datenbank, der Portierung
einer Datenbank von einem Rechner zu
einem anderen usw.
Das
Dienstprogramm accessdb ist
ein frame-basiertes
Menüsystem von INGRES, mit
dem der INGRES-Systemverwalter
folgende Aufgaben durchführen kann:
- Die existierenden Datenbanken
auflisten bzw.
modifizieren;
- Den Speicherungsort von
Datenbanken,
Journal-Dateien und
Sicherungskopien abfragen,
bzw. diesen
Objekten neue Speicherungsorte
zuweisen;
- Die Information über die existierenden Benutzer
einer Datenbank
abfragen bzw. neue
Benutzer
eintragen oder die
existierenden löschen.
Nach dem Aufruf des
Betriebssystemkommandos
accessdb db_name
erscheint das frame-basiertes Menüsystem mit
folgenden
Funktionen im Hauptmenü:
- Databases,
- ExtendDB,
- Location Name,
- User und
- Catalog .
Mit
der Funktion Databases kann die Information
über
eine existierende
Datenbank abgefragt sowie
weiteren
INGRES-Benutzern der Zugriff auf diese Datenbank ermöglicht
werden. Die Abbildung 15-1 zeigt das
Databases-frame.
Owner: peter Global Access: y
Database Location:
ii_database
Checkpoint Location:
ii_checkpoint
Journal Location:
ii_journal
Save Help End
Abb. 15-1 Das Databases-frame
In Abbildung
15-1 wird Information
für die Datenbank
beispiel ausgegeben. U.a. sind der
DBA sowie die
Speicherungsorte der Objekte
dieser Datenbank aufgelistet.
Die
Liste der existierenden Benutzer kann, falls notwendig,
erweitert werden. Die Voraussetzung
dafür ist, daß es sich
um einen INGRES-Benutzer handelt;
d.h. dieser Benutzer wurde
mit der Funktion User in der
INGRES-Benutzerliste schon
eingetragen.
Mit der Funktion ExtendDB
ist es möglich, die einem
DBA
zugehörigen Datenbanken aufzulisten und, falls notwendig,
einzelnen Datenbanken neue Speicherungsorte zuzuweisen. Die
neuzugewiesenen Speicherungsorte
müssen dem INGRES-System im
voraus bekannt sein.
Die
Funktion Location Name
dient dazu, die
an einem
Speicherungsort existierenden Objekte (Datenbanken,
Journal-Dateien oder
Sicherungskopien)
abzufragen. Damit
kann mit dieser Funktion die genaue
Einsicht über den Inhalt
einzelner Speicherungsorte gewonnen
und die Definition neuer
Speicherungsorte veranlaßt werden.
Die
Funktion User listet alle existierenden INGRES-Benutzer
auf. Mit dieser Funktion ist es auch möglich, neue Benutzer
einzutragen bzw.
existierende Benutzer zu
löschen. Die
Abbildung 15-2 zeigt das User-frame.
User Name: peter
Permissions:
create database: y set trace flags: n
update sys cat: n superuser: n
Owns May Access
dbname dbname
beispiel beispiel
verkauf
Abb. 15-2 Das
User-frame
Abbildung 15-2 zeigt sowohl die allgemeinen Zugriffsrechte
des
Benutzers peter als auch die Liste der Datenbanken, für
welche dieser Benutzer der DBA ("Own") ist, bzw. für welche
er das Zugriffsrecht ("May
Access") hat.
Mit der Funktion Catalog wird die allgemeine
Systeminformation selektiv
ausgegeben. Dabei können folgende
Unterfunktionen ausgewählt werden:
- Databases,
- Location Names und
- Users.
Funktion |
Ergebnis |
Databases |
gibt eine
Tabelle mit der
Liste aller Datenbanken des
INGRES-Systems aus. |
listet alle existierenden Speicherungsorte der Komponenten
des INGRES-Systems auf. |
|
listet
die Namen aller Benutzer und
ihre
Zugriffsrechte in Tabellenform auf. |
USER SUMMARY
Permission
legend:
user name a b c d
$ingres y
y y y a -- May create database
peter y n
n n b -- May update system catalog
ingres y
y y y c -- May set
trace flags
root y
n n n d -- Superuser
Abb.
15-3 Das User Summary-frame
Die Benutzerliste in Abbildung 15-3 enthält vier Benutzer:
$ingres, peter,
ingres und root.
Diese vier Benutzer
haben unterschiedliche Zugriffsrechte,
die in vier Spalten
angegeben sind.
Die
Angabe "y"
kennzeichnet das vergebene Zugriffsrecht.
Diese Angabe in der ersten Spalte
bedeutet, daß der Benutzer
das DBA-Recht hat, d.h.
er darf die Datenbanken erstellen.
Das zweite Zugriffsrecht erlaubt
einem Benutzer die Änderung
der
INGRES-Systemtabellen. Die
Angabe "y" in der dritten
Spalte erlaubt die Verwendung von
"trace"-Schaltern, während
dieselbe Angabe in der
vierten Spalte den
Benutzer zum
Superuser ernennt.
Mit
dem Dienstprogramm catalogdb
kann ein Benutzer alle
ihm
zugehörigen Datenbanken
auflisten bzw. der
DBA die
Liste aller einem Benutzer
gehörenden Datenbanken erstellen.
catalogdb wird mit dem
Betriebssystemkommando
catalogdb
[-uben]
aufgerufen. catalogdb ist ein formatgesteuertes Menüsystem,
mit
dem ein Benutzer
die Datenbanken auflisten
kann,
für die er den Zugriff hat. Der
Schalter "-u" ist
dem
INGRES-Systemadministrator vorbehalten, um die Liste aller
dem Benutzer ben zugehörigen
Datenbanken zu erstellen.
Mit dem Dienstprogramm createdb
wird eine neue Datenbank
erstellt. Der Benutzer, der die Datenbank erstellt hat, wird
der
Datenbankadministrator dieser
Datenbank. createdb wird
mit dem Betriebssystemkommando
createdb [-uben] [-p] [-csp_ort1] [-dsp_ort2]
[-jsp_ort3] db_name
aufgerufen. Der
Schalter "-u" ist
dem
INGRES-Systemadministrator vorbehalten. Mit diesem Schalter
kann eine neue Datenbank für den
Benutzer ben eingerichtet
werden. Der Schalter "-p" schränkt den
Zugriff auf die
Datenbank db_name für den DBA
und die mit dem Dienstprogramm
accessdb explizit genannten Benutzer ein. db_name ist
der
Name der zu erstellenden Datenbank.
Mit den Schaltern
"-c" , "-d" und "-j" werden
die
Speicherungsorte der Sicherungskopie, der Datenbank-Dateien
und der Journal-Dateien in dieser
Reihenfolge gespeichert.
Jeder Speicherungsort muß im
voraus mit dem Dienstprogramm
accessdb erstellt werden.
Beispiel 15.4
createdb beispiel -cdev1_ing -ddev2_ing -jdev3_ing
In Beispiel 15.4 wird eine neue
Datenbank beispiel erstellt.
Die
Sicherungskopie, die Datenbank-
und Journal-Dateien
werden an drei unterschiedlichen
Orten gespeichert.
Mit
dem Dienstprogramm destroydb wird eine erstellte
Datenbank gelöscht. Das
Dateiverzeichnis der Datenbank und
alle ihm zugehörigen Dateien werden
gelöscht. destroydb wird
mit dem Betriebssystemkommando
destroydb [-p] [-uben] db_name
aufgerufen. Nur der DBA
und der INGRES-Systemadministrator
(falls er den Schalter
"-u" verwendet) können eine Datenbank
löschen. Der Schalter "-p"
veranlaßt das System vom Benutzer
eine zusätzliche
explizite Zustimmung zum
Löschen der
Datenbank zu erteilen.
Das
Dienstprogramm ckpdb erzeugt
die Sicherungskopie
einer oder mehrerer Datenbanken
eines INGRES-Systems und
kennzeichnet alle
bis zu diesem Augenblick erstellten
Journal-Dateien als ungültig. Dieses
Dienstprogramm wird mit
dem Betriebssystemkommando
ckpdb [-d] [+j|-j] [-mgeraet] [-uben] [-s]
db_liste
aufgerufen. Mit
dem Schalter "-d" werden die zuletzt
erstellte Sicherungskopie
der Datenbank und
die
Jorunal-Datei gelöscht.
"+j" bzw. "-j" schaltet die
Erstellung der Journal-Dateien ein
bzw. aus.
Der
Schalter "-m"
definiert mit geraet das
Speichermedium
für
die Sicherungskopie der Datenbank, während "-u" die
Sicherungskopien aller
dem Benutzer ben zugehörigen
Datenbanken erstellt. Der Schalter "-s"
kann nur der DBA
benutzen, um den systemübergreifenden Zugriff
auf jede
Datenbank des INGRES-Systems zu
ermöglichen. db_liste stellt
die Liste der Datenbanken dar, für
die die Sicherungskopie
erstellt werden soll.
Beispiel 15.2
ckpdb +j -m /dev/tape beispiel
In
Beispiel 15.2 wird die Sicherungskopie der Datenbank
beispiel erstellt und auf dem Magnetbandgerät /dev/tape
gesichert. Gleichzeitig wird die
Erstellung der
Journal-Dateien veranlaßt.
Mit
dem Dienstprogramm rollforwarddb wird die Restaurierung
einer oder mehrerer Datenbanken
mit Hilfe der
zuletzt
erstellten Sicherungskopie(n)
und der Journal-Dateien
gestartet. rollforwarddb wird
mit dem Betriebssystemkommando
rollforwarddb [+c|-c] [+j|-j] [-mgeraet] [-s] [-uben]
[-v] db_liste
aufgerufen. Die
Schalter "+j", "-j", "-m",
"-s" und
"-u" haben
dieselbe Bedeutung wie
die gleichnamigen
Schalter des Kommandos ckpdb. Mit dem Schalter
"+c"
wird die Restaurierung einer
oder mehrerer Datenbanken
gestartet während
"-c" dies unterdrückt. Der
Schalter "-v"
veranlaßt die Protokollierung aller Operationen während
des
Restaurierungsprozesses.
Das
Dienstprogramm rollforwarddb
sperrt die Datenbank(en)
exklusiv, während ckpdb ab
der version 6.3 dies unterläßt.
Beispiel 15.3
rollforwarddb +j -m /dev/tape beispiel
In Beispiel 15.3 wird
die Datenbank beispiel
restauriert,
indem zuerst die existierende Sicherungskopie des
Magnetbandgeräts /dev/tape benutzt
wird, und danach
die
Journal-Dateien angewendet werden.
Das Dienstprogramm unloaddb erstellt Prozeduren, mit denen
eine Datenbank entladen bzw.
neugeladen werden kann.
unloaddb wird mit dem
folgenden Betriebssystemkommando
unloaddb [-uben] [-c] [-dpfad_name] [-lsql] db_name
aufgerufen. unloaddb ist ein
sehr nützliches Dienstprogramm,
mit dem ein DBA
zwei Kommandodateien unload.ing und
reload.ing erstellen
kann. Die erste
Datei enthält
Anweisungen,
um jede Benutzer-
und Systemtabelle einer
Datenbank in ein explizit
angegebenes Dateiverzeichnis zu
kopieren. Die Datei reload.ing ermöglicht das Neuladen
einer Datenbank mit Hilfe
der Information, die in den mit
unload.ing erstellten Dateien
enthalten ist.
Das Dienstprogramm unloaddb liefert
zusätzlich zu den
Informationen über Benutzertabellen auch die Informationen
über alle Views, Integritätsvorschriften, Masken
und
Listenprogramme einer Datenbank. Damit eignet sich unloaddb
besonders dann, wenn die ganze
Datenbank neu aufgebaut
werden muß.
Hinweis.
Die
Funktionalität des Dienstprogramms unloaddb besteht
nicht darin, eine Datenbank
neuzuladen bzw. zu entladen.
unloaddb erstellt nur die dafür notwendigen
Prozeduren.
Der DBA muß anschließend die
Prozeduren starten, damit die
Datenbank entladen bzw. neugeladen wird.
Mit dem Schalter "-u" wird dem DBA
erlaubt, das
Dienstprogramm unloaddb als der Benutzer
namens ben
auszuführen. Der Schalter "-c" veranlaßt
die Kommandos in
den
beiden generierten
Kommandodateien das Kopieren
der
Dateien mit Hilfe vom
ASCII-Zeichensatz durchzuführen. Damit
wird die Portierung der Datenbanken
eines INGRES-Systems von
einem Rechner zu einem anderen
Rechner ermöglicht. Falls die
beiden Dateien unload.ing und reload.ing
nicht im aktuellen
Dateiverzeichnis gespeichert werden
sollen, muß der Schalter
"-d" mit dem
absoluten oder relativen
Pfadnamen des neuen
Dateiverzeichnisses angegeben werden.
db_name schließlich
definiert den Namen der Datenbank,
die geladen bzw. entladen
werden soll.
Das Dienstprogramm auditdb ermöglicht
die Auswertung
der Journal-Dateien.
Durch die verschiedenen Schalter
kann die Ausgabe spezifischer Information aus einer
Journal-Datei sowohl
für eine Datenbank
als auch für
eine Tabelle veranlaßt werden.
auditdb wird mit
dem
Betriebssystemkommando
auditdb [-bzeit] [-ezeit] [-f] [-iben1] [-s]
[-ttab_name] [-uben2] db_name
aufgerufen. Mit dem Schalter "-b" bzw.
"-e" können alle
erfolgreich beendeten
Transaktionen vor bzw.
nach der
Zeitangabe zeit
ausgegeben werden. Die
Maske dieser
Zeitausgabe ist "dd-mmm-yyyy:hh:mm:ss" wobei "dd" für Tag.
"mmm" für Monat, "yyyy" für Jahr,
"hh" für Stunde,
""mm"
für Minute und "ss" für
Sekunde steht. Der Schalter "-t"
gibt alle Einträge der
Journal-Datei bezüglich der Tabelle
tab_name aus.
Mit dem Schalter
"-f" kann eine
binäre Datei erstellt
werden, die die Reihen der mit dem
Schalter "-t" definierten
Tabelle enthält. Dabei handelt
es sich um die Reihen, die
entweder in der Tabelle eingefügt
oder hineinkopiert bzw.
aus der Tabelle gelöscht wurden.
Mit dem Schalter "-i" werden alle Einträge
der
Journal-Datei, die im
Zusammenhang mit den Aktivitäten des
Benutzers ben1 protokolliert
wurden, ausgegeben. "-u" gibt
alle Einträge aus, die
im Zusammenhang mit den Datenbanken
des
Benutzers ben2
stehen. Mit dem
Schalter "-s" wird
dem
INGRES-Systemadministrator
die Möglichkeit gegeben,
auf INGRES-Datenbanken
zuzugreifen. db_name schließlich
definiert die Datenbank,
für die die
Einträge aus der
Journal-Datei ausgewertet werden.