Wer kann die Datenbank ändern?
Die ALTER DATABASE-Anweisung kann ausgeführt werden durch:
-
Benutzer mit dem
ALTER DATABASE-Privileg
Die ALTER DATABASE-Anweisung kann ausgeführt werden durch:
Benutzer mit dem ALTER DATABASE-Privileg
ALTER DATABASEADD (FILE)Fügt der Datenbank sekundäre Dateien hinzu.Es ist notwendig, den vollständigen Pfad zur Datei und den Namen der Sekundärdatei anzugeben.Die Beschreibung für die Sekundärdatei ähnelt der für die Anweisung CREATE DATABASE.
ADD DIFFERENCE FILEGibt den Pfad und den Namen der Delta-Datei an, die alle Mutationen in der Datenbank speichert, wenn sie in den "kopiersicheren" Modus geschaltet wird.Diese Klausel fügt tatsächlich keine Datei hinzu.Es überschreibt nur den Standardnamen und -pfad der .delta-Datei.Um die bestehenden Einstellungen zu ändern, sollten Sie die zuvor angegebene Beschreibung der .delta-Datei mit der DROP DIFFERENCE FILE-Klausel löschen, bevor Sie die neue Beschreibung der Delta-Datei angeben.Wenn Pfad und Name der .delta-Datei nicht überschrieben werden, hat die Datei denselben Pfad und Namen wie die Datenbank, jedoch mit der Dateierweiterung .delta.
|
Caution
|
Wird nur ein Dateiname angegeben, wird die .delta-Datei im aktuellen Verzeichnis des Servers erstellt.Unter Windows ist dies das Systemverzeichnis – ein sehr unkluger Ort, um flüchtige Benutzerdateien zu speichern und im Gegensatz zu den Windows-Dateisystemregeln. |
DROP DIFFERENCE FILELöscht die Beschreibung (Pfad und Name) der .delta-Datei, die zuvor in der Klausel ADD DIFFERENCE FILE angegeben wurde.Die Datei wird nicht wirklich gelöscht.DROP DIFFERENCE FILE löscht den Pfad und den Namen der .delta-Datei aus dem Datenbank-Header.Wenn die Datenbank das nächste Mal in den “copy-safe”-Modus geschaltet wird, werden die Standardwerte verwendet (d. h. der gleiche Pfad und Name wie die der Datenbank, aber mit der Erweiterung .delta).
BEGIN BACKUPSchaltet die Datenbank in den “kopiersicher” Modus. ALTER DATABASE mit dieser Klausel friert die Hauptdatenbankdatei ein, sodass sie mit Dateisystemtools sicher gesichert werden kann, selbst wenn Benutzer verbunden sind und Operationen mit Daten ausführen.Bis der Sicherungsstatus der Datenbank auf NORMAL zurückgesetzt wird, werden alle an der Datenbank vorgenommenen Änderungen in die .delta (Differenz)-Datei geschrieben.
|
Important
|
Trotz ihrer Syntax startet eine Anweisung mit der |
END BACKUPSchaltet die Datenbank vom “kopiersicheren” Modus in den normalen Modus um.Eine Anweisung mit dieser Klausel führt die .delta-Datei mit der Hauptdatenbankdatei zusammen und stellt den normalen Betrieb der Datenbank wieder her.Nach dem Start des Prozesses END BACKUP sind die Voraussetzungen für die Erstellung sicherer Backups mittels Dateisystemtools nicht mehr gegeben.
|
Warning
|
Die Verwendung von Eine sichere Sicherung mit dem Dienstprogramm gbak ist jederzeit möglich, es wird jedoch nicht empfohlen, gbak auszuführen, während sich die Datenbank im Status LOCKED oder MERGE befindet. |
SET DEFAULT CHARACTER SETÄndert den Standardzeichensatz der Datenbank.Diese Änderung wirkt sich nicht auf vorhandene Daten oder Spalten aus.Der neue Standardzeichensatz wird nur in nachfolgenden DDL-Befehlen verwendet.
ENCRYPT WITHSiehe auch Verschlüsselung einer Datenbank im Sicherheitskapitel.
DECRYPTSiehe auch Entschlüsselung einer Datenbank im Sicherheitskapitel.
SET LINGER TOSetzt die linger-Verzögerung.Die linger-Verzögerung gilt nur für Firebird SuperServer und gibt an, wie viele Sekunden der Server eine Datenbankdatei (und ihre Caches) geöffnet hält, nachdem die letzte Verbindung zu dieser Datenbank geschlossen wurde.Dies kann dazu beitragen, die Leistung kostengünstig zu verbessern, wenn die Datenbank häufig geöffnet und geschlossen wird, indem Ressourcen für die nächste Verbindung "warm" gehalten werden.
|
Note
|
Dieser Modus kann für Webanwendungen - ohne Verbindungspool - nützlich sein, bei denen die Verbindung zur Datenbank normalerweise nur für sehr kurze Zeit "lebt". |
|
Warning
|
Die Klauseln |
DROP LINGERLöscht die linger-Verzögerung (setzt sie auf Null).Die Verwendung von DROP LINGER entspricht der Verwendung von SET LINGER TO 0.
|
Note
|
Das Löschen von 'LINGER' ist keine ideale Lösung für die gelegentliche Notwendigkeit, es für einen einmaligen Zustand auszuschalten, in dem der Server erzwungenes Herunterfahren benötigt.Das Dienstprogramm gfix hat jetzt den Schalter Dieselbe einmalige Überschreibung ist auch über die Dienste-API unter Verwendung des Tags
|
|
Warning
|
Die Klauseln |
SET DEFAULT SQL SECURITYGibt die Standardoption SQL SECURITY an, die zur Laufzeit für Objekte ohne den Eigenschaftssatz SQL-Sicherheit angewendet wird.Siehe auch SQL-Sicherheit im Kapitel Sicherheit.
ENABLE PUBLICATIONAktiviert die Veröffentlichung dieser Datenbank für die Replikation.Die Replikation beginnt (oder wird fortgesetzt) mit der nächsten Transaktion, die gestartet wird, nachdem diese Transaktion festgeschrieben wurde.
DISABLE PUBLICATIONAktiviert die Veröffentlichung dieser Datenbank für die Replikation.Die Replikation wird sofort nach dem Commit deaktiviert.
EXCLUDE … FROM PUBLICATIONSchließt Tabellen von der Veröffentlichung aus.Wenn die INCLUDE ALL TO PUBLICATION-Klausel verwendet wird, werden alle danach erstellten Tabellen ebenfalls repliziert, sofern sie nicht explizit in der CREATE TABLE-Anweisung überschrieben werden.
INCLUDE … TO PUBLICATIONEnthält Tabellen zur Veröffentlichung.Wenn die INCLUDE ALL TO PUBLICATION-Klausel verwendet wird, werden alle danach erstellten Tabellen ebenfalls repliziert, sofern sie nicht explizit in der CREATE TABLE-Anweisung überschrieben werden.
|
Note
|
Replikation
|
ALTER DATABASEHinzufügen einer sekundären Datei zur Datenbank.Sobald 30000 Seiten in der vorherigen Primär- oder Sekundärdatei gefüllt sind, beginnt die Firebird-Engine, Daten in die Sekundärdatei test4.fdb hinzuzufügen.
ALTER DATABASE
ADD FILE 'D:\test4.fdb'
STARTING AT PAGE 30001;
Angabe von Pfad und Name der Delta-Datei:
ALTER DATABASE
ADD DIFFERENCE FILE 'D:\test.diff';
Löschen der Beschreibung der Delta-Datei:
ALTER DATABASE
DROP DIFFERENCE FILE;
Umschalten der Datenbank in den “kopiersicher” Modus:
ALTER DATABASE
BEGIN BACKUP;
Zurückschalten der Datenbank vom “copy-safe”-Modus in den normalen Betriebsmodus:
ALTER DATABASE
END BACKUP;
Ändern des Standardzeichensatzes für eine Datenbank in WIN1251
ALTER DATABASE
SET DEFAULT CHARACTER SET WIN1252;
Einstellen einer linger-Verzögerung von 30 Sekunden
ALTER DATABASE
SET LINGER TO 30;
Verschlüsseln der Datenbank mit einem Plugin namens DbCrypt
ALTER DATABASE
ENCRYPT WITH DbCrypt;
Entschlüsseln der Datenbank
ALTER DATABASE
DECRYPT;
DROP DATABASELöschen der Datenbank, mit der Sie gerade verbunden sind
DSQL, ESQL
DROP DATABASE
Die Anweisung DROP DATABASE löscht die aktuelle Datenbank.Bevor Sie eine Datenbank löschen, müssen Sie sich mit ihr verbinden.Die Anweisung löscht die Primärdatei, alle Sekundärdateien und alle Shadow-Dateien.
|
Note
|
Im Gegensatz zu |
Die DROP DATABASE-Anweisung kann ausgeführt werden durch:
Benutzer mit dem Privileg `DROP DATABASE`BASE
DROP DATABASEDROP DATABASE;