H3.3. Befehle zur Datenbankverwaltung

Initialisierung der Datenbank

Zum Zeitpunkt der Initialisierung muss die Datenbank nicht vorhanden sein oder leer sein.

drwcsd [<Schalter>] initdb [<Lizenzschlüssel>|- [<SQL-Skript>|- [<INI-Datei>|- [<Passwort> [<LUA-Skript>|-]]]]] – Datenbank initialisieren.

<Lizenzschlüssel> – Pfad zum Lizenzschlüssel von Dr.Web agent.key. Fall kein Lizenzschlüssel angegeben ist, muss er im Nachhinein über das Verwaltungscenter hinzugefügt werden oder über die Server-zu-Server-Kommunikation von einem Nachbar-Server abgerufen werden.

<SQL-Skript> – Pfad zum SQL-Skript für die Initialisierung der physischen Struktur der Datenbank.

<INI-Datei> – eine im Voraus generierte Datei im Format drweb32.ini, mit der die Anfangskonfiguration der Komponenten der Dr.Web Software (für die Gruppe Everyone) festgelegt werden soll.

<Passwort> – das Anfangspasswort des Server-Administrators (der Name ist admin). Der Standardwert ist root.

<lua-Skrip> – Pfad zum Lua-Skript für die Initialisierung der Datenbank (zum Befüllen der Datenbank mit den Standardwerten).

Der Sonderwert (Minuszeichen) „-“ gibt an, dass das Skript nicht verwendet werden soll.

Das Minuszeichen kann ausgelassen werden, wenn ihm keine weiteren Parameter folgen.

Parameter für die Datenbankinitialisierung konfigurieren

Bei der Verwendung einer integrierten Datenbank können die Initialisierungsparameter anhand einer externen Datei festgelegt werden. Dazu dient der folgende Befehl:

drwcsd.exe initdbex <response-file>

<response-file> – Datei, in der die Parameter für die Datenbankinitialisierung zeilenweise und in der gleichen Reihenfolge, wie die Parameter des Befehls initdb, gespeichert sind.

Dateiformat:

<vollständiger_Name_der_Lizenzschlüsseldatei>

<vollständiger_Name_der_SQL-Skriptdatei>

<vollständiger_Name_der_INI-Datei>

<Administrator-Passwort>

Wenn unter Windows die RESPONSE-Datei verwendet wird, können beliebige Zeichen für das Administrator-Passwort verwendet werden.

Zeilen, die dem jeweils erforderlichen Parameter folgen, sind optional. Wenn die Zeile nur aus „-“ (einem Minuszeichen) besteht, wird der Standardwert verwendet (wie bei initdb).

Datenbank aktualisieren

drwcsd [<Schalter>] updatedb <Skript> – eine Aktion für die Datenbank (z. B. Aktualisierung auf eine neuere Version) durch Ausführung eines SQL-Skripts oder Lua-Skripts aus der angegebenen Datei ausführen.

Upgrade der Datenbank

drwcsd upgradedb [<Verzeichnis>] – den Server zwecks Aktualisierung der Datenbankstruktur beim Umstieg auf eine neuere Version aus dem angegebenen Verzeichnis (siehe das Verzeichnis update-db) oder mittels interner Skripte starten.

Datenbank exportieren

a)drwcsd exportdb <Datei> – Datenbank in die angegebene Datei exportieren.

Beispiel für Windows:

C:\Program Files\DrWeb Server\bin\drwcsd.exe -home="C:\Program Files\DrWeb Server" -var-root="C:\Program Files\DrWeb Server\var" -verbosity=all exportdb "C:\Program Files\DrWeb Server\esbase.es"

Unter Betriebssystemen der UNIX-Familie wird die Aktion unter dem Konto drwcs:drwcs ausgeführt. Die Datei wird in das Verzeichnis $DRWCS_VAR exportiert. Unter FreeBSD wird die Datei im Verzeichnis gespeichert, in dem das Skript ausgeführt wurde. Wenn Sie den Pfad explizit angeben wollen, müssen Sie sicherstellen, dass das Konto <Benutzer>:<Gruppe>, das bei der Installation angelegt wurde (standardmäßig drwcs:drwcs), über den Schreibzugriff auf dieses Verzeichnis verfügt.

b)drwcsd xmlexportdb <XML-Datei> – Datenbank in die angegebene XML-Datei exportieren.

Wenn Sie als Dateiendung gz angeben, wird die Datenbankdatei als GZIP-Archiv exportiert.

Wenn Sie keine Dateiendung oder nicht gz angeben, wird die Datei beim Export nicht archiviert.

Beispiel für Windows:

So exportieren Sie die Datenbank in eine nicht archivierte XML-Datei:

"C:\Program Files\DrWeb Server\bin\drwcsd.exe" "-home=C:\Program Files\DrWeb Server" "-bin-root=C:\Program Files\DrWeb Server" "-var-root=C:\Program Files\DrWeb Server\var" -verbosity=ALL -rotate=10,10m -log=export.log xmlexportdb database.db

So exportieren Sie die Datenbank in eine archivierte XML-Datei:

"C:\Program Files\DrWeb Server\bin\drwcsd.exe" "-home=C:\Program Files\DrWeb Server" "-bin-root=C:\Program Files\DrWeb Server" "-var-root=C:\Program Files\DrWeb Server\var" -verbosity=ALL -rotate=10,10m -log=export.log xmlexportdb database.gz

Beispiel für UNIX-basierte Betriebssysteme:

So exportieren Sie die Datenbank in eine nicht archivierte XML-Datei:

/etc/init.d/drwcsd xmlexportdb /es/database.db

So exportieren Sie die Datenbank in eine archivierte XML-Datei:

/etc/init.d/drwcsd xmlexportdb /es/database.gz

Datenbank importieren

a)drwcsd importdb <Datei> – Datenbank von der angegebenen Datei importieren. Der alte Inhalt der Datenbank wird gelöscht.

b)drwcsd upimportdb <Datei> [<Verzeichnis>] – Import und Update der Datenbank, die beim Export aus dem Server vorheriger Versionen (der alte Inhalt der DB wird gelöscht) generiert wurde. Sie können den Pfad zum Verzeichnis mit den Skripten zur Aktualisierung der Datenbank beim Umstieg auf eine neuere Version (analog zum Befehl upgradedb) angeben.

c)drwcsd xmlimportdb <XML-Datei> – Datenbank von der angegebenen XML-Datei importieren.

d)drwcsd xmlupimportdb <XML-Datei> [<Verzeichnis>] – Import und Update der Datenbank, die beim XML-Export aus dem Server vorheriger Versionen generiert wurde. Sie können den Pfad zum Verzeichnis mit den Skripten zur Aktualisierung der Datenbank beim Umstieg auf eine neuere Version (analog zum Befehl upgradedb) angeben.

e)drwcsd xmlimportdbnh <XML-Datei> – Datenbank von der angegebenen XML-Datei importieren, ohne den Hash-Wert der Datei zu berücksichtigen. Dieser Befehl ist hilfreich, wenn die XML-Datei manuell bearbeitet wurde oder der beim Export automatisch geschriebene Hash-Wert der Datei nicht mehr gültig ist.

Vor der Ausführung der Befehle upimportdb und xmlupimportdb sollten Sie Ihre Datenbank sichern.

Unsachgemäße Anwendung dieser Befehle kann zur Löschung aller Daten in der Datenbank führen.

 

Die Befehle upimportdb und xmlupimportdb zum Import mit der gleichzeitigen Aktualisierung der Datenbankversion können nur im gleichen DBMS ausgeführt werden.

Exportdump der Datenbank

drwcsd [<Schalter>] dumpimportdb <Datenbankdatei> [<SQL-Datei> [<Tabellenfilter>]] – Informationen über die eingebettete bzw. externe Datenbank in die Protokolldatei des Servers oder in die SQL-Datei schreiben.

Bei der Ausführung des Befehls dumpimportdb wird die Datenbank weder exportiert noch importiert.

<Datenbankdatei> ist die Exportdatei der Datenbank, zu der Informationen in das Protokoll des Servers oder in die <SQL-Datei> geschrieben werden sollen. Die Exportdatei kann mit dem Befehl exportdb generiert werden. Alternativ kann die Datei, die beim Sichern der Datenbank erstellt wurde, verwendet werden. Die mit dem Befehl xmlexportdb erstellte XML-Datei kann nicht verwendet werden.

<SQL-Datei> ist eine Datei, in die alle SQL-Abfragen geschrieben werden, die beim Import der Datenbank aus der in der <Datenbankdatei> angegebenen Datei ausgeführt werden. Wenn keine SQL-Datei angegeben ist, werden die Daten in das Protokoll des Servers geschrieben (als Liste von Tabellen und deren Felder). Wenn die SQL-Datei angegeben ist, werden die Daten in die SQL-Datei geschrieben.

<Tabellenfilter> ist die Liste von Datenbanktabellen, zu denen Informationen in die <SQL-Datei> geschrieben werden sollen. Die Tabellen müssen durch Komma voneinander getrennt angegeben werden. Die Namen müssen den Namen der Tabellen in der Datenbank entsprechen. Zum Beispiel, admins,groups,stations. Der Tabellenfilter ist nur beim Schreiben in die SQL-Datei wirksam. Wenn keine Tabellen angegeben sind, werden alle Tabellen ausgegeben.

Datenbank überprüfen

drwcsd verifydb – den Server zwecks Überprüfung der Datenbank starten. Damit Informationen zum Ergebnis der Überprüfung in die Protokolldatei geschrieben werden, fügen Sie dem Befehl den Schalter -log hinzu. Weitere Informationen zu diesem Schalter finden Sie unter H3.8. Beschreibung der Schalter.

Leistung der Datenbank erhöhen

drwcsd [<Schalter>] speedupdb – Befehle VACUUM, CLUSTER, ANALYZE zur Optimierung der Datenbankleistung ausführen.

Datenbank wiederherstellen

drwcsd repairdb – beschädigtes Abbild der eingebetteten SQLite3-Datenbank bzw. beschädigte Tabellen der externen MySQL-Datenbank reparieren.

Die SQLite3-Datenbank kann automatisch beim Start des Servers repariert werden, falls in den Einstellungen der SQLite3-Datenbank das Kontrollkästchen Beschädigtes Abbild automatisch wiederherstellen aktiviert ist (mehr dazu finden Sie im Administratorhandbuch unter Datenbank wiederherstellen).

Datenbank aufräumen

drwcsd cleandb – dieser Befehl löscht alle Tabellen und bereinigt somit die DB des Servers.