ALTER DATABASE - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

ALTER DATABASE

Ändert die Attribute einer Datenbank.

Erforderliche Berechtigungen

Für ALTER DATABASE die Verwendung ist eines der folgenden Rechte erforderlich..

  • Superuser

  • Benutzer mit der ALTER DATABASE Berechtigung

  • Datenbankbesitzer

Syntax

ALTER DATABASE database_name { RENAME TO new_name | OWNER TO new_owner | CONNECTION LIMIT { limit | UNLIMITED } | COLLATE { CASE_SENSITIVE | CASE_INSENSITIVE } | ISOLATION LEVEL { SERIALIZABLE | SNAPSHOT } | INTEGRATION REFRESH {{ ALL | INERROR } TABLES [IN SCHEMA schema [, ...]] | TABLE schema.table [, ...]} }

Parameter

database_name

Der Name der Datenbank, die geändert werden soll. In der Regel ändern Sie eine Datenbank, mit der Sie zurzeit nicht verbunden sind. In jedem Fall werden die Änderungen nur in folgenden Sitzungen wirksam. Sie können den Besitzer der aktuellen Datenbank ändern, sie jedoch nicht umbenennen:

alter database tickit rename to newtickit; ERROR: current database may not be renamed
RENAMEZU

Benennt die angegebene Datenbank um. Weitere Informationen zu gültigen Namen finden Sie unter Namen und Kennungen. Sie können die Datenbanken dev, padb_harvest, template0 oder template1 oder sys:internal-Datenbanken nicht umbenennen. Nur der Datenbankbesitzer oder ein superuser kann eine Datenbank umbenennen. Besitzer, die keine Superuser sind, müssen ebenfalls über dieses Recht verfügen. CREATEDB

new_name

Neuer Datenbankname.

OWNERZU

Ändert den Besitzer der angegebenen Datenbank. Sie können den Besitzer der aktuellen Datenbank oder einer anderen Datenbank ändern. Nur ein Superuser kann den Besitzer ändern.

new_owner

Neuer Datenbankbesitzer. Der neue Besitzer muss ein vorhandener Datenbankbenutzer mit Schreibberechtigungen sein. Weitere Informationen zu Benutzerrechten finden Sie in GRANT.

CONNECTIONLIMIT{Limit |UNLIMITED}

Redshift unterstützt das Schreiben von verschachteltem JSON-Code, wenn das Abfrageergebnis SUPER-Spalten enthält. Das Limit wird für Superuser nicht durchgesetzt. Verwenden Sie das UNLIMITED Schlüsselwort, um die maximale Anzahl gleichzeitiger Verbindungen zuzulassen. Möglicherweise gilt auch ein Limit für die Zahl der Verbindungen für die einzelnen Benutzer. Weitere Informationen finden Sie unter CREATE USER. Die Standardeinstellung istUNLIMITED. Um die aktuellen Verbindungen anzuzeigen, führen Sie eine Abfrage für die Systemansicht STV_SESSIONS aus.

Anmerkung

Wenn sowohl für Benutzer- als auch für Datenbankverbindungen Limits gelten, muss ein ungenutzter Verbindungsplatz verfügbar sein, der sich innerhalb beider Grenzen befindet, wenn ein Benutzer versucht, eine Verbindung herzustellen.

COLLATE { CASE_SENSITIVE | CASE_INSENSITIVE }

Eine Klausel, die angibt, ob bei der Suche oder dem Vergleich von Zeichenfolgen zwischen Groß- und Kleinschreibung unterschieden wird oder nicht.

Sie können die Unterscheidung zwischen Groß- und Kleinschreibung in der aktuellen, leeren Datenbank ändern.

Sie müssen über die Berechtigung für die aktuelle Datenbank verfügen, um die Unterscheidung zwischen Groß-/Kleinschreibung zu ändern. Superuser oder Datenbankbesitzer mit dieser CREATE DATABASE Berechtigung können auch die Groß- und Kleinschreibung in der Datenbank ändern.

ISOLATION LEVEL { SERIALIZABLE | SNAPSHOT }

Eine Klausel, die die verwendete Isolationsstufe bei Abfragen für eine Datenbank angibt.

  • SERIALIZABLEIsolation — bietet vollständige Serialisierbarkeit für gleichzeitige Transaktionen. Weitere Informationen finden Sie unter Serialisierbare Isolierung.

  • SNAPSHOTIsolation — bietet eine Isolationsstufe mit Schutz vor Aktualisierungs- und Löschkonflikten.

Weitere Hinweise zu Isolationsstufen finden Sie unter CREATE DATABASE.

Beachten Sie die folgenden Elemente, wenn Sie die Isolationsstufe einer Datenbank ändern:

  • Sie benötigen den Superuser oder CREATE DATABASE das Recht für die aktuelle Datenbank, um die Isolationsstufe der Datenbank ändern zu können.

  • Sie können die Isolationsstufe der dev-Datenbank nicht ändern.

  • Sie können die Isolationsstufe innerhalb eines Transaktionsblocks nicht ändern.

  • Der Befehl zum Ändern der Isolationsstufe schlägt fehl, wenn andere Benutzer mit der Datenbank verbunden sind.

  • Mit dem Befehl zum Ändern der Isolationsstufe können die Isolationsstufen-Einstellungen der aktuellen Sitzung geändert werden.

INTEGRATIONREFRESH{{ALL|INERROR} TABLES [IM SCHEMA Schema [,...]] | TABLE schema.table [,...]}

Eine Klausel, die angibt, ob Amazon Redshift alle Tabellen oder Tabellen mit Fehlern im angegebenen Schema oder der Tabelle aktualisiert. Die Aktualisierung löst aus, dass die Tabellen im angegebenen Schema oder der angegebenen Tabelle vollständig aus der Quelldatenbank repliziert werden.

Weitere Informationen finden Sie unter Working with Zero ETL Integrations im Amazon Redshift Management Guide. Weitere Informationen zu Integrationszuständen finden Sie unter SVV_INTEGRATION_TABLE_STATE und SVV_INTEGRATION.

Nutzungshinweise

ALTERDATABASEBefehle gelten für nachfolgende Sitzungen, nicht für aktuelle Sitzungen. Sie müssen die Verbindung mit der geänderten Datenbank erneut herstellen, um die Auswirkungen der Änderung anzuzeigen.

Beispiele

Im folgenden Beispiel wird eine Datenbank mit dem Namen _ in TICKIT TICKIT _ SANDBOX TEST umbenannt:

alter database tickit_sandbox rename to tickit_test;

Im folgenden Beispiel wird der Besitzer der TICKIT Datenbank (der aktuellen Datenbank) wie folgt geändert: DWUSER

alter database tickit owner to dwuser;

Im folgenden Beispiel wird die Unterscheidung zwischen Groß-/Kleinschreibung in der Datenbank sampledb geändert:

ALTER DATABASE sampledb COLLATE CASE_INSENSITIVE;

Im folgenden Beispiel wird eine Datenbank sampledb mit dem Namen SNAPSHOT Isolationsstufe geändert.

ALTER DATABASE sampledb ISOLATION LEVEL SNAPSHOT;

Im folgenden Beispiel werden die Tabellen sample_table1 und die Datenbank sample_table2 sample_integration_db in Ihrer ETL Nullintegrationsstufe aktualisiert.

ALTER DATABASE sample_integration_db INTEGRATION REFRESH TABLES sample_table1, sample_table2;

Im folgenden Beispiel werden alle synchronisierten und fehlgeschlagenen Tabellen innerhalb Ihrer Zero-Integration aktualisiert. ETL

ALTER DATABASE sample_integration_db INTEGRATION REFRESH ALL tables;

Im folgenden Beispiel werden alle Tabellen aktualisiert, die sich im ErrorState im Schema sample_schema befinden.

ALTER DATABASE sample_integration_db INTEGRATION REFRESH INERROR TABLES in SCHEMA sample_schema;