Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:Analytics Platform System (PDW)
Diese Anweisung wird verwendet, um eine neue Datenbank in einer Analytics Platform System Appliance zu erstellen. Verwenden Sie diese Anweisung, um alle Dateien zu erstellen, die einer Appliancedatenbank zugeordnet sind, und um die Optionen für die maximale Größe und die automatische Vergrößerung der Datenbanktabellen und des Transaktionsprotokolls festzulegen.
Transact-SQL-Syntaxkonventionen
Syntax
CREATE DATABASE database_name
WITH (
[ AUTOGROW = ON | OFF , ]
REPLICATED_SIZE = replicated_size [ GB ] ,
DISTRIBUTED_SIZE = distributed_size [ GB ] ,
LOG_SIZE = log_size [ GB ] )
[ ; ]
Arguments
database_name
Der Name der neuen Datenbank. Weitere Informationen zu zulässigen Datenbanknamen finden Sie unter Reservierte Datenbanknamen.
AUTOGROW = { ON | FALSCH }
Gibt an, ob die Parameter replicated_size, distributed_size und log_size automatisch über die angegebene Größe hinaus vergrößert werden. Der Standardwert ist OFF.
Wenn AUTOGROW , ONreplicated_size, distributed_size und log_size bei jedem Einfügen, Aktualisieren oder einer anderen Aktion, die mehr Speicherplatz erfordert, als bereits zugewiesen wurde, wachsen und log_size wachsen.
Wenn AUTOGROW ja OFF, werden die Größen nicht automatisch vergrößert.
AUTOGROW ist entweder ON für alle Größen oder OFF für alle Größen verfügbar. Beispielsweise ist es nicht möglich, für AUTOGROW ON festzulegen, aber nicht für replicated_size.
replicated_size [ DE ]
Eine positive Zahl. Legt die Größe (eine ganze Zahl oder Dezimalzahl Gigabytes) für den gesamten Speicherplatz fest, der replizierten Tabellen und den entsprechenden Daten auf jedem Computeknoten zugewiesen wurde.
Ist AUTOGROW dies ONder Fall, können replizierte Tabellen über diesen Grenzwert hinaus wachsen.
Wenn AUTOGROW dies der Fehler ist OFF, wird ein Fehler zurückgegeben, wenn ein Benutzer versucht, eine neue replizierte Tabelle zu erstellen, Daten in eine vorhandene replizierte Tabelle einzufügen oder eine vorhandene replizierte Tabelle auf eine Weise zu aktualisieren, die die Größe über replicated_size hinaus erhöhen würde.
distributed_size [ DE ]
Eine positive Zahl. Die Größe, als ganze Zahl oder Dezimalzahl Gigabytes, für den gesamten Speicherplatz, der verteilten Tabellen (und den entsprechenden Daten) auf der gesamten Appliance zugewiesen wurde.
Ist AUTOGROW dies ONder Fall, dürfen verteilte Tabellen über diese Grenze hinaus wachsen.
Wenn AUTOGROW dies der Fehler ist OFF, wird ein Fehler zurückgegeben, wenn ein Benutzer versucht, eine neue verteilte Tabelle zu erstellen, Daten in eine vorhandene verteilte Tabelle einzufügen oder eine vorhandene verteilte Tabelle auf eine Weise zu aktualisieren, die die Größe über distributed_size hinaus erhöhen würde.
log_size [ DE ]
Eine positive Zahl. Die Größe (als ganze Zahl oder Dezimalzahl Gigabytes) für das Transaktionsprotokoll auf der gesamten Appliance.
Ist AUTOGROW dies ONder Fall, darf die Protokolldatei über diese Grenze hinaus wachsen. Verwenden Sie die DBCC SHRINKLOG - Analytics Platform System (PDW) -Anweisung, um die Größe der Protokolldateien auf ihre originale Größe zu reduzieren.
Wenn AUTOGROW dies der Fall ist OFF, wird ein Fehler für jede Aktion zurückgegeben, die die Protokollgröße auf einem einzelnen Computeknoten über log_size hinaus erhöhen würde.
Erlaubnisse
Erfordert die CREATE ANY DATABASE-Berechtigung in der master-Datenbank oder die Mitgliedschaft in der festen Serverrolle sysadmin.
Im folgenden Beispiel wird dem Datenbankbenutzer Fay die Berechtigung zum Erstellen einer Datenbank erteilt.
USE master;
GO
GRANT CREATE ANY DATABASE TO [Fay];
GO
Bemerkungen
Datenbanken werden mit dem Datenbank-Kompatibilitätsgrad 120, also dem Kompatibilitätsgrad für SQL Server 2014 (12.x), erstellt. Dadurch wird sichergestellt, dass die Datenbank alle von PDW verwendeten SQL Server 2014-Funktionen (12.x) verwenden kann.
Limitations
Die CREATE DATABASE Anweisung ist in einer expliziten Transaktion nicht zulässig. Weitere Informationen finden Sie unter Transact-SQL Anweisungen.
Bei der Erstellung der Datenbank muss genügend freier Speicherplatz auf jedem Computeknoten verfügbar sein, um den kombinierten Gesamtspeicherplatz der folgenden Größen zuzuweisen:
- SQL Server-Datenbank mit Tabellen mit einer Größe von replicated_table_size.
- SQL Server-Datenbank mit Tabellen mit einer Größe von (distributed_table_size bzw. Anzahl von Computeknoten)
- SQL Server-Protokolle mit einer Größe von (log_size / Anzahl von Computeknoten).
Sperren
Eine gemeinsame Sperre für das DATABASE-Objekt wird zugelassen.
Metadaten
Nachdem dieser Vorgang erfolgreich ausgeführt wurde, wird ein Eintrag für diese Datenbank in den Metadatenansichten "sys.databases " und "sys.objects " angezeigt.
Beispiele: Analytics-Plattformsystem (PDW)
A. Beispiele für die Erstellung einer grundlegenden Datenbank
Im folgenden Beispiel wird die Datenbank mytest mit einem zugewiesenen Speicherplatz von 100 GB pro Computeknoten für replizierte Tabellen, 500 GB pro Appliance für verteilte Tabellen und 100 GB pro Appliance für das Transaktionsprotokoll erstellt. In diesem Beispiel AUTOGROW ist standardmäßig deaktiviert.
CREATE DATABASE mytest
WITH
(REPLICATED_SIZE = 100 GB,
DISTRIBUTED_SIZE = 500 GB,
LOG_SIZE = 100 GB );
Im folgenden Beispiel wird die Datenbank mytest mit den gleichen Parametern erstellt, mit der Ausnahme, dass sie AUTOGROW aktiviert ist. Dadurch kann sich die Datenbank über die angegebenen Größenparameter hinweg vergrößern.
CREATE DATABASE mytest
WITH
(AUTOGROW = ON,
REPLICATED_SIZE = 100 GB,
DISTRIBUTED_SIZE = 500 GB,
LOG_SIZE = 100 GB);
B. Erstellen einer Datenbank mit partiellen Gigabytegrößen
Im folgenden Beispiel wird die Datenbank mytestmit AUTOGROW deaktivierter Speicherzuweisung von 1,5 GB pro Computeknoten für replizierte Tabellen, 5,25 GB pro Appliance für verteilte Tabellen und 10 GB pro Appliance für das Transaktionsprotokoll erstellt.
CREATE DATABASE mytest
WITH
(REPLICATED_SIZE = 1.5 GB,
DISTRIBUTED_SIZE = 5.25 GB,
LOG_SIZE = 10 GB);