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)
Im Analytics Platform System (PDW) ALTER DATABASE werden die maximalen Datenbankgrößenoptionen für replizierte Tabellen, verteilte Tabellen und das Transaktionsprotokoll modifiziert. Verwenden Sie diese Anweisung, um die Speicherplatzzuordnungen für eine Datenbank zu verwalten, wenn sich diese vergrößert oder verkleinert. In diesem Artikel wird auch die Syntax im Zusammenhang mit dem Festlegen von Datenbankoptionen in Analytics Platform System (PDW) beschrieben.
Transact-SQL-Syntaxkonventionen
Syntax
-- Analytics Platform System
ALTER DATABASE database_name
SET ( <set_database_options> | <db_encryption_option> )
[;]
<set_database_options> ::=
{
AUTOGROW = { ON | OFF }
| REPLICATED_SIZE = size [GB]
| DISTRIBUTED_SIZE = size [GB]
| LOG_SIZE = size [GB]
| SET AUTO_CREATE_STATISTICS { ON | OFF }
| SET AUTO_UPDATE_STATISTICS { ON | OFF }
| SET AUTO_UPDATE_STATISTICS_ASYNC { ON | OFF }
}
<db_encryption_option> ::=
ENCRYPTION { ON | OFF }
Arguments
database_name
Der Name der Datenbank, die geändert werden soll. Um eine Liste von Datenbanken auf dem Gerät anzuzeigen, verwenden Sie sys.databases.
AUTOGROW = { ON | FALSCH }
Aktualisiert die Option AUTOGROW. Wenn AUTOGROW ON ist, erhöht Analytics-Plattformsystem (PDW) automatisch den zugeordneten Speicherplatz für replizierte Tabellen und verteilte Tabellen sowie das Transaktionsprotokoll nach Bedarf, um den gesteigerten Speicheranforderungen gerecht zu werden. Wenn AUTOGROW OFF ist, gibt Analytics-Plattformsystem (PDW) einen Fehler zurück, wenn replizierte Tabellen, verteilte Tabellen oder das Transaktionsprotokoll die Einstellung für die maximale Größe überschreiten.
REPLICATED_SIZE = Größe [GB]
Gibt die neue maximale Anzahl von Gigabyte pro Computeknoten für die Speicherung aller replizierten Tabellen in der Datenbank an, die geändert werden. Wenn Sie den Speicherplatz der Appliance planen, müssen Sie REPLICATED_SIZE mit der Anzahl der Computeknoten in der Appliance multiplizieren.
DISTRIBUTED_SIZE = Größe [GB]
Gibt die neue maximale Anzahl von Gigabyte pro Datenbank für die Speicherung aller verteilten Tabellen in der Datenbank an, die geändert werden. Die Größe wird auf alle Computeknoten der Appliance verteilt.
LOG_SIZE = Größe [GB]
Gibt die neue maximale Anzahl von Gigabyte pro Datenbank für die Speicherung aller Transaktionsprotokolle in der Datenbank an, die geändert werden. Die Größe wird auf alle Computeknoten der Appliance verteilt.
VERSCHLÜSSELUNG { ON | OFF }
Legt fest, ob die Datenbank verschlüsselt (ON) oder nicht verschlüsselt (OFF) werden soll. Die Verschlüsselung kann nur für Analytics-Plattformsystem (PDW) konfiguriert werden, wenn sp_pdw_database_encryption auf 1 festgelegt wurde. Ein Datenbank-Verschlüsselungsschlüssel muss erstellt werden, bevor Transparent Data Encryption konfiguriert werden kann. Weitere Informationen zur Datenbankverschlüsselung finden Sie unter Transparent data encryption (TDE).For more information about database encryption, see Transparent data encryption (TDE).
SET AUTO_CREATE_STATISTICS { ON | FALSCH }
Ist die Option AUTO_CREATE_STATISTICS zum automatischen Erstellen von Statistiken aktiviert, erstellt der Abfrageoptimierer nach Bedarf Statistiken für einzelne Spalten im Abfrageprädikat, um Kardinalitätsschätzungen für den Abfrageplan zu verbessern. Diese einzelspaltigen Statistiken werden für Spalten erstellt, die noch kein Histogramm in einem vorhandenen Statistikobjekt aufweisen.
Bei neuen Datenbanken, die nach dem Upgrade auf AU7 erstellt wurden, ist die Option standardmäßig auf ON festgelegt. Bei Datenbanken, die vor dem Upgrade erstellt wurden, ist die Option standardmäßig auf OFF festgelegt.
Weitere Informationen zu Statistiken finden Sie unter Statistik
SET AUTO_UPDATE_STATISTICS { ON | FALSCH }
Wenn die Option für automatische Aktualisierungsstatistiken, AUTO_UPDATE_STATISTICS, aktiviert ist, bestimmt der Abfrageoptimierer, wann Statistiken möglicherweise veraltet sind, und aktualisiert sie dann, wenn sie von einer Abfrage verwendet werden. Statistiken sind veraltet, wenn die Datenverteilung in der Tabelle oder indizierten Sicht durch die Vorgänge INSERT, UPDATE, DELETE oder MERGE geändert wurde. Der Abfrageoptimierer stellt fest, wann Statistiken veraltet sein könnten, indem er die Anzahl der Datenänderungen seit des letzten Statistikupdates ermittelt und sie mit einem Schwellenwert vergleicht. Der Schwellenwert basiert auf der Anzahl der Zeilen in der Tabelle oder indizierten Ansicht.
Bei neuen Datenbanken, die nach dem Upgrade auf AU7 erstellt wurden, ist die Option standardmäßig auf ON festgelegt. Bei Datenbanken, die vor dem Upgrade erstellt wurden, ist die Option standardmäßig auf OFF festgelegt.
Weitere Informationen zu Statistiken finden Sie unter Statistik.
SET AUTO_UPDATE_STATISTICS_ASYNC { ON | FALSCH }
Mit der AUTO_UPDATE_STATISTICS_ASYNC-Option für die asynchrone Statistikaktualisierung wird festgelegt, ob der Abfrageoptimierer die synchrone oder asynchrone Statistikaktualisierung verwendet. Die AUTO_UPDATE_STATISTICS_ASYNC-Option gilt für Statistikobjekte, die für Indizes, einzelne Spalten in Abfrageprädikaten und mit der CREATE STATISTICS -Anweisung generierte Statistiken erstellt wurden.
Bei neuen Datenbanken, die nach dem Upgrade auf AU7 erstellt wurden, ist die Option standardmäßig auf ON festgelegt. Bei Datenbanken, die vor dem Upgrade erstellt wurden, ist die Option standardmäßig auf OFF festgelegt.
Weitere Informationen zu Statistiken finden Sie unter Statistik.
Erlaubnisse
Erfordert die ALTER Berechtigung für die Datenbank.
Fehlermeldungen
Wenn „auto-stats“ deaktiviert ist und Sie versuchen, die Statistikeinstellungen zu ändern, gibt PDW die Fehlermeldung This option isn't supported in PDW aus. Der Systemadministrator kann „auto-stats“ aktivieren, indem er den Featureschalter AutoStatsEnabled aktiviert.
Bemerkungen
Die Werte für REPLICATED_SIZE, DISTRIBUTED_SIZE und LOG_SIZE können größer, gleich oder kleiner als die aktuellen Werte für die Datenbank sein.
Limitations
Vergrößerungs- und Verkleinerungsvorgänge sind ungenau. Die resultierenden tatsächlichen Größen können von den Größenparametern abweichen.
Das Analytics Platform System (PDW) führt die ALTER DATABASE Anweisung nicht als Atomoperation aus. Wenn die Anweisung während der Ausführung abgebrochen wird, bleiben Änderungen, die bereits durchgeführt wurden, erhalten.
Die Statistikeinstellungen funktionieren nur, wenn der Administrator automatische Statistiken aktiviert hat. Wenn Sie ein Administrator sind, verwenden Sie den Featureswitch AutoStatsEnabled , um die automatische Statistik zu aktivieren oder zu deaktivieren.
Sperrverhalten
Eine gemeinsame Sperre für das DATABASE-Objekt wird zugelassen. Sie können keine Datenbank ändern, die von einem anderen Benutzer zum Lesen oder Schreiben verwendet wird. Dies schließt auch Sitzungen ein, die eine USE-Anweisung für die Datenbank ausgeführt haben.
Performance
Das Verkleinern einer Datenbank kann, abhängig von der Größe der tatsächlichen Daten innerhalb der Datenbank und der Menge der Fragmentierung auf dem Datenträger, viel Zeit und viele Systemressourcen in Anspruch nehmen. Das Verkleinern einer Datenbank könnte beispielsweise mehrere Stunden oder noch länger dauern.
Bestimmen des Verschlüsselungsfortschritts
Verwenden Sie die folgende Abfrage, um den Fortschritt der transparenten Datenverschlüsselung für die Datenbank als Prozentsatz zu bestimmen:
WITH
database_dek AS (
SELECT ISNULL(db_map.database_id, dek.database_id) AS database_id,
dek.encryption_state, dek.percent_complete,
dek.key_algorithm, dek.key_length, dek.encryptor_thumbprint,
type
FROM sys.dm_pdw_nodes_database_encryption_keys AS dek
INNER JOIN sys.pdw_nodes_pdw_physical_databases AS node_db_map
ON dek.database_id = node_db_map.database_id
AND dek.pdw_node_id = node_db_map.pdw_node_id
LEFT JOIN sys.pdw_database_mappings AS db_map
ON node_db_map .physical_name = db_map.physical_name
INNER JOIN sys.dm_pdw_nodes nodes
ON nodes.pdw_node_id = dek.pdw_node_id
WHERE dek.encryptor_thumbprint <> 0x
),
dek_percent_complete AS (
SELECT database_dek.database_id, AVG(database_dek.percent_complete) AS percent_complete
FROM database_dek
WHERE type = 'COMPUTE'
GROUP BY database_dek.database_id
)
SELECT DB_NAME( database_dek.database_id ) AS name,
database_dek.database_id,
ISNULL(
(SELECT TOP 1 dek_encryption_state.encryption_state
FROM database_dek AS dek_encryption_state
WHERE dek_encryption_state.database_id = database_dek.database_id
ORDER BY (CASE encryption_state
WHEN 3 THEN -1
ELSE encryption_state
END) DESC), 0)
AS encryption_state,
dek_percent_complete.percent_complete,
database_dek.key_algorithm, database_dek.key_length, database_dek.encryptor_thumbprint
FROM database_dek
INNER JOIN dek_percent_complete
ON dek_percent_complete.database_id = database_dek.database_id
WHERE type = 'CONTROL';
Ein umfassendes Beispiel zur Veranschaulichung aller Schritte bei der Implementierung von TDE finden Sie unter Transparent data encryption (TDE).
Beispiele: Analytics-Plattformsystem (PDW)
A. Ändern der AUTOGROW-Einstellung
Legen Sie AUTOGROW für die Datenbank CustomerSales auf ON fest.
ALTER DATABASE CustomerSales
SET ( AUTOGROW = ON );
B. Ändern des maximalen Speicherplatzes für replizierte Tabellen
Im folgenden Beispiel wird die Speicherbegrenzung für replizierte Tabellen für die Datenbank CustomerSales auf 1 GB festgelegt. Dabei handelt es sich um die Speicherbegrenzung pro Computeknoten.
ALTER DATABASE CustomerSales
SET ( REPLICATED_SIZE = 1 GB );
C. Ändern des maximalen Speicherplatzes für verteilte Tabellen
Im folgenden Beispiel wird der Speichergrenzwert für verteilte Tabellen auf 1.000 GB (1 Terabyte) für die Datenbank CustomerSalesfestgelegt. Dabei handelt es sich um die gemeinsame Speicherbegrenzung für alle Computeknoten der Appliance und nicht um die Speicherbegrenzung pro Computeknoten.
ALTER DATABASE CustomerSales
SET ( DISTRIBUTED_SIZE = 1000 GB );
D. Ändern des maximalen Speicherplatzes für das Transaktionsprotokoll
Im folgenden Beispiel wird die Datenbank CustomerSales so aktualisiert, dass die maximale Größe des SQL Server-Transaktionsprotokolls für die Appliance 10 GB beträgt.
ALTER DATABASE CustomerSales
SET ( LOG_SIZE = 10 GB );
E. Überprüfung auf aktuelle Statistikwerte
Die folgende Abfrage gibt die aktuellen Statistikwerte für sämtliche Datenbanken zurück. Der Wert 1 bedeutet, dass das Feature aktiviert ist, und eine 0 bedeutet, dass das Feature deaktiviert ist.
SELECT [name],
is_auto_create_stats_on,
is_auto_update_stats_on,
is_auto_update_stats_async_on
FROM sys.databases;
F. Aktivieren der automatischen Erstellung und des automatischen Updates von Statistiken für eine Datenbank
Mit der folgenden Anweisung können Sie Statistiken zur automatischen und asynchronen Erstellung und Aktualisierung für die Datenbank „CustomerSales“ aktivieren. Dadurch werden zur Erstellung hochwertiger Abfragepläne nach Bedarf einspaltige Statistiken erstellt und aktualisiert.
ALTER DATABASE CustomerSales
SET AUTO_CREATE_STATISTICS ON;
ALTER DATABASE CustomerSales
SET AUTO_UPDATE_STATISTICS ON;
ALTER DATABASE
SET AUTO_UPDATE_STATISTICS_ASYNC ON;