ALTER DATABASE (Transact-SQL)ALTER DATABASE (Transact-SQL)

Ändern bestimmter Konfigurationsoptionen einer DatenbankModifies certain configuration options of a database.

Dieser Artikel stellt die Syntax, Argumente, Anweisungen, Berechtigungen und Beispiele für das SQL-Produkt Ihrer Wahl bereit.This article provides the syntax, arguments, remarks, permissions, and examples for whichever SQL product you choose.

Weitere Informationen zu Syntaxkonventionen finden Sie unter Transact-SQL-Syntaxkonventionen.For more information about the syntax conventions, see Transact-SQL Syntax Conventions.

Wählen Sie ein Produkt.Click a product!

Klicken Sie in der folgenden Zeile auf den Namen des Produkts, das Sie am meisten interessiert.In the following row, click whichever product name you are interested in. Mit nur einem Klick erhalten Sie auf dieser Webseite unterschiedliche Inhalte, die zu dem Produkt passen, das Sie ausgewählt haben.The click displays different content here on this webpage, appropriate for whichever product you click.

** * SQL Server * **  * SQL Server *   SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
SQL Data
Warehouse
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Übersicht: SQL ServerOverview: SQL Server

Diese Anweisung ändert in SQL Server eine Datenbank bzw. die zu dieser Datenbank gehörenden Dateien und Dateigruppen.In SQL Server, this statement modifies a database, or the files and filegroups associated with the database. Fügt einer Datenbank Dateien und Dateigruppen hinzu oder entfernt diese, ändert die Attribute einer Datenbank oder ihrer Dateien und Dateigruppen, ändert die Datenbanksortierung und legt Datenbankoptionen fest.Adds or removes files and filegroups from a database, changes the attributes of a database or its files and filegroups, changes the database collation, and sets database options. Datenbankmomentaufnahmen können nicht geändert werden.Database snapshots cannot be modified. Verwenden Sie zum Ändern von Datenbankoptionen für die Replikation sp_replicationdboption.To modify database options associated with replication, use sp_replicationdboption.

Aufgrund ihrer Länge wird die ALTER DATABASE-Syntax in mehrere Artikel aufgeteilt.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE Der aktuelle Artikel behandelt die Syntax und weitere Informationen zum Ändern des Namens und der Sortierung einer Datenbank.ALTER DATABASE The current article provides the syntax and related information for changing the name and the collation of a database.

ALTER DATABASE-Optionen für Dateien und Dateigruppen stellt die Syntax und weitere Informationen zum Hinzufügen und Entfernen von Dateien und Dateigruppen in einer Datenbank sowie zum Ändern der Datei- und Dateigruppenattribute bereit.ALTER DATABASE File and Filegroup Options Provides the syntax and related information for adding and removing files and filegroups from a database, and for changing the attributes of the files and filegroups.

ALTER DATABASE SET-Optionen stellt die Syntax und weitere Informationen zum Ändern der Datenbankattribute mithilfe der SET-Optionen von ALTER DATABASE bereit.ALTER DATABASE SET Options Provides the syntax and related information for changing the attributes of a database by using the SET options of ALTER DATABASE.

ALTER DATABASE-Datenbankspiegelung Stellt die Syntax und weitere Informationen für die SET-Optionen von ALTER DATABASE bereit, die sich auf die Datenbankspiegelung beziehen.ALTER DATABASE Database Mirroring Provides the syntax and related information for the SET options of ALTER DATABASE that are related to database mirroring.

ALTER DATABASE SET HADR Stellt die Syntax und weitere Informationen zu den ALTER DATABASE-Optionen für AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups zum Konfigurieren einer sekundären Datenbank auf einem sekundären Replikat einer Always On-Verfügbarkeitsgruppe bereit.ALTER DATABASE SET HADR Provides the syntax and related information for the AlwaysOn-VerfügbarkeitsgruppenAlways On availability groups options of ALTER DATABASE for configuring a secondary database on a secondary replica of an Always On availability group.

ALTER DATABASE-Kompatibilitätsgrad stellt die Syntax und weitere Informationen für die SET-Optionen von ALTER DATABASE bereit, die sich auf die Datenbank-Kompatibilitätsgrade beziehen.ALTER DATABASE Compatibility Level Provides the syntax and related information for the SET options of ALTER DATABASE that are related to database compatibility levels.

ALTER DATABASE SCOPED CONFIGURATION: Stellt die Syntax für datenbankweit gültige Konfigurationen bereit, die für einzelne Einstellungen auf Datenbankebene wie Abfrageoptimierung und Abfrageausführung verwendet werden.ALTER DATABASE SCOPED CONFIGURATION Provides the syntax related to database scoped configurations used for individual database level settings such as query optimization and query execution related behaviors.

SyntaxSyntax

-- SQL Server Syntax
ALTER DATABASE { database_name | CURRENT }
{
    MODIFY NAME = new_database_name
  | COLLATE collation_name
  | <file_and_filegroup_options>
  | SET <option_spec> [ ,...n ] [ WITH <termination> ]
}
[;]

<file_and_filegroup_options>::=
  <add_or_modify_files>::=
  <filespec>::=
  <add_or_modify_filegroups>::=
  <filegroup_updatability_option>::=

<option_spec>::=
{
  | <auto_option>
  | <change_tracking_option>
  | <cursor_option>
  | <database_mirroring_option>
  | <date_correlation_optimization_option>
  | <db_encryption_option>
  | <db_state_option>
  | <db_update_option>
  | <db_user_access_option><delayed_durability_option>
  | <external_access_option>
  | <FILESTREAM_options>
  | <HADR_options>
  | <parameterization_option>
  | <query_store_options>
  | <recovery_option>
  | <service_broker_option>
  | <snapshot_option>
  | <sql_option>
  | <termination>
  | <temporal_history_retention>
  | <compatibility_level>
      { 150 | 140 | 130 | 120 | 110 | 100 | 90 }
}

ArgumenteArguments

database_name Der Name der Datenbank, die geändert werden soll.database_name Is the name of the database to be modified.

Hinweis

Diese Option ist in einer eigenständigen Datenbank nicht verfügbar.This option is not available in a Contained Database.

CURRENT Gilt für: SQL Server 2012 (11.x)SQL Server 2012 (11.x) bis SQL Server 2017SQL Server 2017.CURRENT Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) through SQL Server 2017SQL Server 2017.

Legt fest, dass die zurzeit verwendete Datenbank geändert werden soll.Designates that the current database in use should be altered.

MODIFY NAME = _new_database_name_Benennt die Datenbank in den angegebenen Namen new_database_name um.MODIFY NAME =new_database_name Renames the database with the name specified as new_database_name.

COLLATE collation_name Gibt die Sortierung für die Datenbank an.COLLATE collation_name Specifies the collation for the database. collation_name kann entweder der Name einer Windows-Sortierreihenfolge oder ein SQL-Sortierungsname sein.collation_name can be either a Windows collation name or a SQL collation name. Wenn keine Sortierung angegeben ist, wird der Datenbank die Sortierung der Instanz von SQL ServerSQL Server zugewiesen.If not specified, the database is assigned the collation of the instance of SQL ServerSQL Server.

Hinweis

Sobald die Datenbank einmal in Azure SQL-DatenbankAzure SQL Database erstellt wurde, kann sie nicht mehr geändert werden.Collation cannot be changed after database has been created on Azure SQL-DatenbankAzure SQL Database.

Beim Erstellen von Datenbanken mit einer von der Standardsortierung abweichenden Sortierung folgen die Daten in der Datenbank immer der angegebenen Sortierung.When creating databases with other than the default collation, the data in the database always respects the specified collation. Bei der Erstellung einer eigenständigen Datenbank in SQL ServerSQL Server werden die internen Kataloginformationen mit der SQL ServerSQL Server-Standardsortierung Latin1_General_100_CI_AS_WS_KS_SC verwaltet.For SQL ServerSQL Server, when creating a contained database, the internal catalog information is maintained using the SQL ServerSQL Server default collation, Latin1_General_100_CI_AS_WS_KS_SC.

Weitere Informationen zu den Namen von Windows- und SQL-Sortierungen finden Sie unter COLLATE.For more information about the Windows and SQL collation names, see COLLATE.

<delayed_durability_option> ::= Gilt für: SQL Server 2014 (12.x)SQL Server 2014 (12.x) bis SQL Server 2017SQL Server 2017.<delayed_durability_option> ::= Applies to: SQL Server 2014 (12.x)SQL Server 2014 (12.x) through SQL Server 2017SQL Server 2017.

Weitere Informationen finden Sie unter ALTER DATABASE SET-Optionen und Steuern der Transaktionsdauerhaftigkeit.For more information see ALTER DATABASE SET Options and Control Transaction Durability.

<file_and_filegroup_options>::= Weitere Informationen finden Sie unter ALTER DATABASE-Optionen FILE und FILEGROUP.<file_and_filegroup_options>::= For more information, see ALTER DATABASE File and Filegroup Options.

RemarksRemarks

Verwenden Sie DROP DATABASE, um eine Datenbank zu entfernen.To remove a database, use DROP DATABASE.

Verwenden Sie DBCC SHRINKDATABASE, um die Größe einer Datenbank zu reduzieren.To decrease the size of a database, use DBCC SHRINKDATABASE.

Die ALTER DATABASE-Anweisung muss im Autocommitmodus (dem Standardmodus für die Transaktionsverwaltung) ausgeführt werden und ist in einer expliziten oder impliziten Transaktion nicht zugelassen.The ALTER DATABASE statement must run in auto-commit mode (the default transaction management mode) and is not allowed in an explicit or implicit transaction.

Der Status einer Datenbankdatei (z. B. online oder offline) wird unabhängig vom Status der Datenbank verwaltet.The state of a database file (for example, online or offline), is maintained independently from the state of the database. Weitere Informationen finden Sie im Abschnitt Dateistatus.For more information, see File States. Der Status der Dateien in einer Dateigruppe bestimmt die Verfügbarkeit der gesamten Dateigruppe.The state of the files within a filegroup determines the availability of the whole filegroup. Damit eine Dateigruppe verfügbar ist, müssen alle Dateien in der Dateigruppe online sein.For a filegroup to be available, all files within the filegroup must be online. Ist eine Dateigruppe offline, verursacht jeder Versuch, über eine SQL-Anweisung auf die Dateigruppe zuzugreifen, einen Fehler.If a filegroup is offline, any try to access the filegroup by an SQL statement will fail with an error. Wenn Sie Abfragepläne für SELECT-Anweisungen erstellen, vermeidet der Abfrageoptimierer nicht gruppierte Indizes und indizierte Sichten, die sich in Offlinedateigruppen befinden.When you build query plans for SELECT statements, the query optimizer avoids nonclustered indexes and indexed views that reside in offline filegroups. Dadurch wird ein erfolgreiches Ausführen der Anweisungen ermöglicht.This enables these statements to succeed. Enthält die Offlinedateigruppe jedoch den Heap oder gruppierten Index der Zieltabelle, schlagen die SELECT-Anweisungen fehl.However, if the offline filegroup contains the heap or clustered index of the target table, the SELECT statements fail. Auch alle INSERT-, UPDATE- oder DELETE-Anweisungen, die eine Tabelle mit einem Index in einer Offlinedateigruppe ändern, schlagen fehl.Additionally, any INSERT, UPDATE, or DELETE statement that modifies a table with any index in an offline filegroup will fail.

Wenn eine Datenbank sich im Status RESTORING befindet, erzeugen die meisten ALTER DATABASE-Anweisungen einen Fehler.When a database is in the RESTORING state, most ALTER DATABASE statements will fail. Eine Ausnahme bildet das Festlegen von Datenbank-Spiegelungsoptionen.The exception is setting database mirroring options. Eine Datenbank kann den Status RESTORING aufweisen, während ein Wiederherstellungsvorgang aktiv ist oder wenn ein Wiederherstellungsvorgang einer Datenbank oder Protokolldatei aufgrund einer beschädigten Sicherungsdatei fehlschlägt.A database may be in the RESTORING state during an active restore operation or when a restore operation of a database or log file fails because of a corrupted backup file.

Der Plancache für die Instanz von SQL ServerSQL Server wird gelöscht, indem eine der folgenden Optionen festgelegt wird.The plan cache for the instance of SQL ServerSQL Server is cleared by setting one of the following options.

OFFLINEOFFLINE READ_WRITEREAD_WRITE
ONLINEONLINE MODIFY FILEGROUP DEFAULTMODIFY FILEGROUP DEFAULT
MODIFY_NAMEMODIFY_NAME MODIFY FILEGROUP READ_WRITEMODIFY FILEGROUP READ_WRITE
COLLATECOLLATE MODIFY FILEGROUP READ_ONLYMODIFY FILEGROUP READ_ONLY
READ_ONLYREAD_ONLY PAGE_VERIFYPAGE_VERIFY

Durch das Löschen des Plancaches wird eine Neukompilierung aller nachfolgenden Ausführungspläne verursacht, und möglicherweise entsteht plötzlich eine temporäre Verringerung der Abfrageleistung.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Das SQL ServerSQL Server-Fehlerprotokoll enthält für jeden geleerten Cachespeicher im Plancache folgende informative Meldung: SQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations.For each cleared cachestore in the plan cache, the SQL ServerSQL Server error log contains the following informational message: SQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations. Diese Meldung wird alle fünf Minuten protokolliert, solange der Cache innerhalb dieses Zeitintervalls geleert wird.This message is logged every five minutes as long as the cache is flushed within that time interval.

Der Plancache wird auch in den folgenden Szenarien geleert:The plan cache is also flushed in the following scenarios:

  • Die Datenbankoption AUTO_CLOSE ist für eine Datenbank auf ON festgelegt.A database has the AUTO_CLOSE database option set to ON. Wenn die Datenbank von keiner Benutzerverbindung verwendet wird bzw. keine Benutzerverbindung darauf verweist, versucht der Hintergrundtask, die Datenbank automatisch zu schließen und herunterzufahren.When no user connection references or uses the database, the background task tries to close and shut down the database automatically.
  • Sie führen mehrere Abfragen für eine Datenbank aus, die über Standardoptionen verfügt.You run several queries against a database that has default options. Anschließend wird die Datenbank gelöscht.Then, the database is dropped.
  • Eine Datenbank-Momentaufnahme für eine Quelldatenbank wird gelöscht.A database snapshot for a source database is dropped.
  • Sie erstellen das Transaktionsprotokoll für eine Datenbank erfolgreich neu.You successfully rebuild the transaction log for a database.
  • Sie stellen eine Datenbanksicherung wieder her.You restore a database backup.
  • Sie trennen eine Datenbank.You detach a database.

Ändern der DatenbanksortierungChanging the Database Collation

Bevor Sie auf eine Datenbank eine andere Sortierung anwenden, stellen Sie sicher, dass die folgenden Bedingungen erfüllt sind:Before you apply a different collation to a database, make sure that the following conditions are in place:

  • Die Datenbank wird derzeit nur von Ihnen verwendet.You are the only one currently using the database.
  • Von der Sortierung der Datenbank hängt kein schemagebundenes Objekt ab.No schema-bound object depends on the collation of the database.

Wenn die folgenden Objekte, die von der Datenbanksortierung abhängen, in der Datenbank vorhanden sind, schlägt die ALTER DATABASEdatabase_nameCOLLATE-Anweisung fehl.If the following objects, which depend on the database collation, exist in the database, the ALTER DATABASEdatabase_nameCOLLATE statement will fail. SQL ServerSQL Server gibt eine Fehlermeldung für jedes Objekt zurück, das die Aktion ALTER blockiert:will return an error message for each object blocking the ALTER action:

  • Benutzerdefinierte Funktionen und Sichten, die mit SCHEMABINDING erstellt wurdenUser-defined functions and views created with SCHEMABINDING
  • Berechnete SpaltenComputed columns
  • CHECK-EinschränkungenCHECK constraints
  • Tabellenwertfunktionen, die Tabellen mit Zeichenspalten zurückgeben, deren Sortierungen von der Standardsortierung der Datenbank geerbt wurdenTable-valued functions that return tables with character columns with collations inherited from the default database collation

Abhängigkeitsinformationen für nicht schemagebundene Entitäten werden automatisch aktualisiert, wenn die Sortierung der Datenbank geändert wird.Dependency information for non-schema-bound entities is automatically updated when the database collation is changed.

Durch das Ändern der Sortierung der Datenbank werden keine Duplikate von Systemnamen für die Datenbankobjekte erstellt.Changing the database collation does not create duplicates among any system names for the database objects. Wenn durch die geänderte Sortierung doppelte Namen entstehen, verursachen die folgenden Namespaces möglicherweise einen Fehler bei der Änderung der Datenbanksortierung:If duplicate names result from the changed collation, the following namespaces may cause the failure of a database collation change:

  • Objektnamen wie z.B. der Name einer Prozedur, Tabelle, Sicht oder eines TriggersObject names such as a procedure, table, trigger, or view
  • SchemanamenSchema names
  • Prinzipale wie z.B. eine Gruppe, Rolle oder ein BenutzerPrincipals such as a group, role, or user
  • Namen skalarer Typen wie z.B. der Name eines vom System oder Benutzer definierten TypsScalar-type names such as system and user-defined types
  • Namen von VolltextkatalogenFull-text catalog names
  • Spalten- oder Parameternamen in einem ObjektColumn or parameter names within an object
  • Indexnamen in einer TabelleIndex names within a table

Durch doppelte Namen, die durch die neue Sortierung entstanden sind, schlägt die ALTER-Aktion fehl. SQL ServerSQL Server gibt eine Fehlermeldung zurück, in der der Namespace angegeben wird, in dem das Duplikat gefunden wurde.Duplicate names resulting from the new collation will cause the change action to fail, and SQL ServerSQL Server will return an error message specifying the namespace where the duplicate was found.

Anzeigen von DatenbankinformationenViewing Database Information

Sie können Katalogsichten, Systemfunktionen und gespeicherte Systemprozeduren verwenden, um Informationen zu Datenbanken, Dateien und Dateigruppen zurückzugeben.You can use catalog views, system functions, and system stored procedures to return information about databases, files, and filegroups.

BerechtigungenPermissions

Erfordert die ALTER-Berechtigung für die Datenbank.Requires ALTER permission on the database.

BeispieleExamples

A.A. Ändern des Namens einer DatenbankChanging the name of a database

Im folgenden Beispiel wird der Name der Datenbank AdventureWorks2012 in Northwind geändert.The following example changes the name of the AdventureWorks2012 database to Northwind.

USE master;
GO
ALTER DATABASE AdventureWorks2012
Modify Name = Northwind ;
GO

B.B. Ändern der DatenbanksortierungChanging the collation of a database

Im folgenden Beispiel wird die Datenbank testdb mit der SQL_Latin1_General_CP1_CI_AS-Sortierung erstellt. Danach wird die Sortierung der Datenbank testdb in COLLATE French_CI_AI geändert.The following example creates a database named testdb with the SQL_Latin1_General_CP1_CI_AS collation, and then changes the collation of the testdb database to COLLATE French_CI_AI.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

USE master;
GO

CREATE DATABASE testdb
COLLATE SQL_Latin1_General_CP1_CI_AS ;
GO

ALTER DATABASE testDB
COLLATE French_CI_AI ;
GO

Weitere InformationenSee Also

SQL ServerSQL Server ** * SQL-Datenbank
Singleton/Pool für elastische Datenbanken *
**  
* SQL Database
single database/elastic pool *
 
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
SQL Data
Warehouse
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Übersicht: Azure SQL-Datenbank Singleton/Pool für elastische DatenbankenOverview: Azure SQL Database single database/elastic pool

Verwenden Sie diese Anweisung in Azure SQL-Datenbank, um eine Datenbank in einem Singleton/Pool für elastische Datenbanken zu ändern.In Azure SQL Database, use this statement to modify a database on a single database/elastic pool. Verwenden Sie diese Anweisung, um den Namen einer Datenbank zu ändern, die Edition und das Dienstziel der Datenbank zu ändern, die Datenbank einem Pool für elastische Datenbanken hinzuzufügen oder daraus zu entfernen, Datenbankoptionen festzulegen, die Datenbank als sekundäre Datenbank in einer Georeplikationsbeziehung hinzuzufügen oder daraus zu entfernen oder den Datenbank-Kompatibilitätsgrad festzulegen.Use this statement to change the name of a database, change the edition and service objective of the database, join or remove the database to or from an elastic pool, set database options, add or remove the database as a secondary in a geo-replication relationship, and set the database compatibility level.

Aufgrund ihrer Länge wird die ALTER DATABASE-Syntax in mehrere Artikel aufgeteilt.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE Der aktuelle Artikel behandelt die Syntax und weitere Informationen zum Ändern des Namens und der Sortierung einer Datenbank.ALTER DATABASE The current article provides the syntax and related information for changing the name and the collation of a database.

ALTER DATABASE SET-Optionen stellt die Syntax und weitere Informationen zum Ändern der Datenbankattribute mithilfe der SET-Optionen von ALTER DATABASE bereit.ALTER DATABASE SET Options Provides the syntax and related information for changing the attributes of a database by using the SET options of ALTER DATABASE.

ALTER DATABASE-Kompatibilitätsgrad stellt die Syntax und weitere Informationen für die SET-Optionen von ALTER DATABASE bereit, die sich auf die Datenbank-Kompatibilitätsgrade beziehen.ALTER DATABASE Compatibility Level Provides the syntax and related information for the SET options of ALTER DATABASE that are related to database compatibility levels.

SyntaxSyntax

-- Azure SQL Database Syntax
ALTER DATABASE { database_name | CURRENT }
{
    MODIFY NAME = new_database_name
  | MODIFY ( <edition_options> [, ... n] )
  | SET { <option_spec> [ ,... n ] WITH <termination>}
  | ADD SECONDARY ON SERVER <partner_server_name>
    [WITH ( <add-secondary-option>::=[, ... n] ) ]
  | REMOVE SECONDARY ON SERVER <partner_server_name>
  | FAILOVER
  | FORCE_FAILOVER_ALLOW_DATA_LOSS
}
[;]

<edition_options> ::=
{

  MAXSIZE = { 100 MB | 250 MB | 500 MB | 1 ... 1024 ... 4096 GB }
  | EDITION = { 'basic' | 'standard' | 'premium' | 'GeneralPurpose' | 'BusinessCritical' | 'Hyperscale'}
  | SERVICE_OBJECTIVE =
       { <service-objective>
       | { ELASTIC_POOL (name = <elastic_pool_name>) }
       }
}

<add-secondary-option> ::=
   {
      ALLOW_CONNECTIONS = { ALL | NO }
     | SERVICE_OBJECTIVE =
       { <service-objective>
       | { ELASTIC_POOL ( name = <elastic_pool_name>) }
       }
   }

<service-objective> ::={ 'basic' |'S0' | 'S1' | 'S2' | 'S3'| 'S4'| 'S6'| 'S7'| 'S9'| 'S12' |
       | 'P1' | 'P2' | 'P4'| 'P6' | 'P11' | 'P15'
       | 'GP_GEN4_1' | 'GP_GEN4_2' | 'GP_GEN4_3' | 'GP_GEN4_4' | 'GP_GEN4_5' | 'GP_GEN4_6' |
       | 'GP_Gen4_7' | 'GP_Gen4_8' | 'GP_Gen4_9' | 'GP_Gen4_10' | 'GP_Gen4_16' | 'GP_Gen4_24' |
       | 'GP_Gen5_2' | 'GP_Gen5_4' | 'GP_Gen5_6' | 'GP_Gen5_8' | 'GP_Gen5_10' | 'GP_Gen5_12' | 'GP_Gen5_14' |
       | 'GP_Gen5_16' | 'GP_Gen5_18' | 'GP_Gen5_20' | 'GP_Gen5_24' | 'GP_Gen5_32' | 'GP_Gen5_40' | 'GP_Gen5_80' |
       | 'BC_Gen4_1' | 'BC_Gen4_2' | 'BC_Gen4_3' | 'BC_Gen4_4' | 'BC_Gen4_5' | 'BC_Gen4_6' |
       | 'BC_Gen4_7' | 'BC_Gen4_8' | 'BC_Gen4_9' | 'BC_Gen4_10' | 'BC_Gen4_16' | 'BC_Gen4_24' |
       | 'BC_Gen5_2' | 'BC_Gen5_4' | 'BC_Gen5_6' | 'BC_Gen5_8' | 'BC_Gen5_10' | 'BC_Gen5_12' | 'BC_Gen5_14' |
       | 'BC_Gen5_16' | 'BC_Gen5_18' | 'BC_Gen5_20' | 'BC_Gen5_24' | 'BC_Gen5_32' | 'BC_Gen5_40' | 'BC_Gen5_80' |
       | 'HS_GEN4_1' | 'HS_GEN4_2' | 'HS_GEN4_4' | 'HS_GEN4_8' | 'HS_GEN4_16' | 'HS_GEN4_24' |
       | 'HS_GEN5_2' | 'HS_GEN5_4' | 'HS_GEN5_8' | 'HS_GEN5_16' | 'HS_GEN5_24' | 'HS_GEN5_32' | 'HS_GEN5_48' | 'HS_GEN5_80' |
      | { ELASTIC_POOL(name = <elastic_pool_name>) }
      }

<option_spec> ::=
{
    <auto_option>
  | <change_tracking_option>
  | <cursor_option>
  | <db_encryption_option>
  | <db_update_option>
  | <db_user_access_option>
  | <delayed_durability_option>
  | <parameterization_option>
  | <query_store_options>
  | <snapshot_option>
  | <sql_option>
  | <target_recovery_time_option>
  | <termination>
  | <temporal_history_retention>
  | <compatibility_level>
    { 150 | 140 | 130 | 120 | 110 | 100 | 90 }

}

ArgumenteArguments

database_name Der Name der Datenbank, die geändert werden soll.database_name Is the name of the database to be modified.

CURRENT: Legt fest, dass die zurzeit verwendete Datenbank geändert werden soll.CURRENT Designates that the current database in use should be altered.

MODIFY NAME = _new_database_name_Benennt die Datenbank in den angegebenen Namen new_database_name um.MODIFY NAME =new_database_name Renames the database with the name specified as new_database_name. Im folgenden Beispiel wird der Name einer Datenbank von db1 in db2 geändert:The following example changes the name of a database db1 to db2:

ALTER DATABASE db1
    MODIFY Name = db2 ;

MODIFY (EDITION = ['basic' | 'standard' | 'premium' |'GeneralPurpose' | 'BusinessCritical' | 'Hyperscale']): Ändert die Dienstebene der Datenbank.MODIFY (EDITION = ['basic' | 'standard' | 'premium' |'GeneralPurpose' | 'BusinessCritical' | 'Hyperscale']) Changes the service tier of the database.

Im folgenden Beispiel wird die Edition in premium geändert:The following example changes edition to premium:

ALTER DATABASE current
    MODIFY (EDITION = 'premium');

Wichtig

Wenn die MAXSIZE-Eigenschaft für die Datenbank auf einen Wert außerhalb des gültigen, von der jeweiligen Edition unterstützten Bereichs festgelegt wird, schlägt die Änderung der EDITION-Eigenschaft fehl.EDITION change fails if the MAXSIZE property for the database is set to a value outside the valid range supported by that edition.

MODIFY (MAXSIZE = [100 MB | 500 MB | 1 | 1024...4096] GB): Gibt die maximale Größe der Datenbank an.MODIFY (MAXSIZE = [100 MB | 500 MB | 1 | 1024...4096] GB) Specifies the maximum size of the database. Die maximale Größe muss dem gültigen Wertsatz für die EDITION-Eigenschaft der Datenbank entsprechen.The maximum size must comply with the valid set of values for the EDITION property of the database. Eine Änderung der maximalen Datenbankgröße kann auch dazu führen, dass die EDITION-Eigenschaft der Datenbank geändert wird.Changing the maximum size of the database may cause the database EDITION to be changed.

Hinweis

Das Argument MAXSIZE gilt nicht für Einzeldatenbanken im Diensttarif „Hyperscale“.The MAXSIZE argument does not apply to single databases in the Hyperscale service tier. Datenbanken im Diensttarif „Hyperscale“ können bei Bedarf auf bis zu 100 TB skaliert werden.Hyperscale service tier databases grow as needed, up to 100 TB. Der SQL-Datenbank-Dienst fügt automatisch Speicher hinzu. Sie müssen keine maximale Größe festlegen.The SQL Database service adds storage automatically - you do not need to set a maximum size.

DTU-basiertes ModellDTU-based model

MAXSIZEMAXSIZE GrundlegendBasic S0-S2S0-S2 S3-S12S3-S12 P1-P6P1-P6 P11-P15P11-P15
100 MB100 MB
250 MB250 MB
500 MB500 MB
1 GB1 GB
2 GB2 GB √ (S)√ (D)
5 GB5 GB N/A
10 GB10 GB N/A
20 GB20 GB N/A
30 GB30 GB N/A
40 GB40 GB N/A
50 GB50 GB N/A
100 GB100 GB N/A
150 GB150 GB N/A
200 GB200 GB N/A
250 GB250 GB N/A √ (S)√ (D) √ (S)√ (D)
300 GB300 GB N/A
400 GB400 GB N/A
500 GB500 GB N/A √ (S)√ (D)
750 GB750 GB N/A
1024 GB1024 GB N/A √ (S)√ (D)
Von 1024 GB bis 4096 GB in Inkrementen von 256 GB*From 1024 GB up to 4096 GB in increments of 256 GB* N/A N/A N/A N/A

* P11 und P15 ermöglichen, dass die Größe von MAXSIZE bis zu 4 TB beträgt, wobei 1024 GB die Standardgröße darstellt.* P11 and P15 allow MAXSIZE up to 4 TB with 1024 GB being the default size. P11 und P15 können bis zu 4 TB des enthaltenen Speichers ohne Aufpreis verwenden.P11 and P15 can use up to 4 TB of included storage at no additional charge. Im Premium-Tarif ist MAXSIZE mit einer Größe von mehr als 1 TB derzeit in den folgenden Regionen verfügbar: USA, Osten 2; USA, Westen; US Gov Virginia; Europa, Westen; Deutschland, Mitte; Asien, Südosten; Japan, Osten; Australien, Osten; Kanada, Mitte und Kanada, Osten.In the Premium tier, MAXSIZE greater than 1 TB is currently available in the following regions: US East2, West US, US Gov Virginia, West Europe, Germany Central, South East Asia, Japan East, Australia East, Canada Central, and Canada East. Zusätzliche Informationen bezüglich der Ressourcenbeschränkungen für das DTU-basierte Modell finden Sie unter DTU-basierte Ressourceneinschränkungen.For additional details regarding resource limitations for the DTU-based model, see DTU-based resource limits.

Der MAXSIZE-Wert für das DTU-basierte Modell muss – wenn angegeben –ein gültiger Wert sein, der in der Tabelle oben für die angegebene Dienstebene angezeigt wird.The MAXSIZE value for the DTU-based model, if specified, has to be a valid value shown in the table above for the service tier specified.

vCore-basiertes ModellvCore-based model

Dienstebene „Universell“: Computeplattform der 4. Generation (Teil 1)General Purpose service tier - Generation 4 compute platform (part 1)

MAXSIZEMAXSIZE GP_Gen4_1GP_Gen4_1 GP_Gen4_2GP_Gen4_2 GP_Gen4_3GP_Gen4_3 GP_Gen4_4GP_Gen4_4 GP_Gen4_5GP_Gen4_5 GP_Gen4_6GP_Gen4_6
Maximale Datengröße (GB)Max data size (GB) 10241024 10241024 10241024 15361536 15361536 15361536

Dienstebene „Universell“: Computeplattform der 4. Generation (Teil 2)General Purpose service tier - Generation 4 compute platform (part 2)

MAXSIZEMAXSIZE GP_Gen4_7GP_Gen4_7 GP_Gen4_8GP_Gen4_8 GP_Gen4_9GP_Gen4_9 GP_Gen4_10GP_Gen4_10 GP_Gen4_16GP_Gen4_16 GP_Gen4_24GP_Gen4_24
Maximale Datengröße (GB)Max data size (GB) 15361536 30723072 30723072 30723072 40964096 40964096

Dienstebene „Universell“: Computeplattform der 5. Generation (Teil 1)General Purpose service tier - Generation 5 compute platform (part 1)

MAXSIZEMAXSIZE GP_Gen5_2GP_Gen5_2 GP_Gen5_4GP_Gen5_4 GP_Gen5_6GP_Gen5_6 GP_Gen5_8GP_Gen5_8 GP_Gen5_10GP_Gen5_10 GP_Gen5_12GP_Gen5_12 GP_Gen5_14GP_Gen5_14
Maximale Datengröße (GB)Max data size (GB) 10241024 10241024 10241024 15361536 15361536 15361536 15361536

Dienstebene „Universell“: Computeplattform der 5. Generation (Teil 2)General Purpose service tier - Generation 5 compute platform (part 2)

MAXSIZEMAXSIZE GP_Gen5_16GP_Gen5_16 GP_Gen5_18GP_Gen5_18 GP_Gen5_20GP_Gen5_20 GP_Gen5_24GP_Gen5_24 GP_Gen5_32GP_Gen5_32 GP_Gen5_40GP_Gen5_40 GP_Gen5_80GP_Gen5_80
Maximale Datengröße (GB)Max data size (GB) 30723072 30723072 30723072 40964096 40964096 40964096 40964096

Dienstebene „Unternehmenskritisch“: Computeplattform der 4. Generation (Teil 1)Business Critical service tier - Generation 4 compute platform (part 1)

LeistungsebenePerformance level BC_Gen4_1BC_Gen4_1 BC_Gen4_2BC_Gen4_2 BC_Gen4_3BC_Gen4_3 BC_Gen4_4BC_Gen4_4 BC_Gen4_5BC_Gen4_5 BC_Gen4_6BC_Gen4_6
Maximale Datengröße (GB)Max data size (GB) 10241024 10241024 10241024 10241024 10241024 10241024

Dienstebene „Unternehmenskritisch“: Computeplattform der 4. Generation (Teil 2)Business Critical service tier - Generation 4 compute platform (part 2)

LeistungsebenePerformance level BC_Gen4_7BC_Gen4_7 BC_Gen4_8BC_Gen4_8 BC_Gen4_9BC_Gen4_9 BC_Gen4_10BC_Gen4_10 BC_Gen4_16BC_Gen4_16 BC_Gen4_24BC_Gen4_24
Maximale Datengröße (GB)Max data size (GB) 10241024 10241024 10241024 10241024 10241024 10241024

Dienstebene „Unternehmenskritisch“: Computeplattform der 5. Generation (Teil 1)Business Critical service tier - Generation 5 compute platform (part 1)

MAXSIZEMAXSIZE BC_Gen5_2BC_Gen5_2 BC_Gen5_4BC_Gen5_4 BC_Gen5_6BC_Gen5_6 BC_Gen5_8BC_Gen5_8 BC_Gen5_10BC_Gen5_10 BC_Gen5_12BC_Gen5_12 BC_Gen5_14BC_Gen5_14
Maximale Datengröße (GB)Max data size (GB) 10241024 10241024 10241024 15361536 15361536 15361536 15361536

Dienstebene „Unternehmenskritisch“: Computeplattform der 5. Generation (Teil 2)Business Critical service tier - Generation 5 compute platform (part 2)

MAXSIZEMAXSIZE BC_Gen5_16BC_Gen5_16 BC_Gen5_18BC_Gen5_18 BC_Gen5_20BC_Gen5_20 BC_Gen5_24BC_Gen5_24 BC_Gen5_32BC_Gen5_32 BC_Gen5_40BC_Gen5_40 BC_Gen5_80BC_Gen5_80
Maximale Datengröße (GB)Max data size (GB) 30723072 30723072 30723072 40964096 40964096 40964096 40964096

Wenn kein MAXSIZE-Wert bei Verwendung des vCore-Modells festgelegt ist, beträgt die Standardgröße 32 GB.If no MAXSIZEvalue is set when using the vCore model, the default is 32 GB. Zusätzliche Informationen bezüglich der Ressourcenbeschränkungen für das V-Kern-basierte Modell finden Sie unter V-Kern-basierte Ressourceneinschränkungen.For additional details regarding resource limitations for vCore-based model, see vCore-based resource limits.

Die folgenden Regeln gelten für das MAXSIZE-Argument und das EDITION-Argument:The following rules apply to MAXSIZE and EDITION arguments:

  • Wenn EDITION angegeben ist, MAXSIZE jedoch nicht, wird der Standardwert für die Edition verwendet.If EDITION is specified but MAXSIZE is not specified, the default value for the edition is used. Wenn EDITION beispielsweise auf die Standard Edition festgelegt und MAXSIZE nicht angegeben ist, wird MAXSIZE automatisch auf 500 MB festgelegt.For example, is the EDITION is set to Standard, and the MAXSIZE is not specified, then the MAXSIZE is automatically set to 500 MB.
  • Wenn weder MAXSIZE noch EDITION angegeben sind, wird EDITION auf „Standard“ (S0) und MAXSIZE auf 250 GB festgelegt.If neither MAXSIZE nor EDITION is specified, the EDITION is set to Standard (S0), and MAXSIZE is set to 250 GB.

MODIFY (SERVICE_OBJECTIVE = <service-objective>): Gibt die Leistungsebene an.MODIFY (SERVICE_OBJECTIVE = <service-objective>) Specifies the performance level. Im folgenden Beispiel wird das Dienstziel einer Premium-Datenbank in P6 geändert:The following example changes service objective of a premium database to P6:

ALTER DATABASE current
    MODIFY (SERVICE_OBJECTIVE = 'P6');
  • Bei einzelnen und in einem Pool zusammengefassten DatenbankenFor single and pooled databases

    • Gibt die Leistungsebene an.Specifies the performance level. Verfügbare Werte für Dienstziele sind: S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, P15, GP_GEN4_1, GP_GEN4_2, GP_GEN4_3, GP_GEN4_4, GP_GEN4_5, GP_GEN4_6, GP_GEN4_7, GP_GEN4_8, GP_GEN4_7, GP_GEN4_8, GP_GEN4_9, GP_GEN4_10, GP_GEN4_16, GP_GEN4_24, BC_GEN4_1, BC_GEN4_2, BC_GEN4_3, BC_GEN4_4, BC_GEN4_5, BC_GEN4_6, BC_GEN4_7, BC_GEN4_8, BC_GEN4_9, BC_GEN4_10, BC_GEN4_16, BC_GEN4_24, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, BC_Gen5_20, BC_Gen5_24, BC_Gen5_32,BC_Gen5_40, BC_Gen5_80.Available values for service objective are: S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, P15, GP_GEN4_1, GP_GEN4_2, GP_GEN4_3, GP_GEN4_4, GP_GEN4_5, GP_GEN4_6, GP_GEN4_7, GP_GEN4_8, GP_GEN4_7, GP_GEN4_8, GP_GEN4_9, GP_GEN4_10, GP_GEN4_16, GP_GEN4_24, BC_GEN4_1, BC_GEN4_2, BC_GEN4_3, BC_GEN4_4, BC_GEN4_5, BC_GEN4_6, BC_GEN4_7, BC_GEN4_8, BC_GEN4_9, BC_GEN4_10, BC_GEN4_16, BC_GEN4_24, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, BC_Gen5_20, BC_Gen5_24, BC_Gen5_32,BC_Gen5_40, BC_Gen5_80.

    • Bei einzelnen Datenbanken im Diensttarif „Hyperscale“For single databases in the Hyperscale service tier

    Gibt die Leistungsebene an.Specifies the performance level. Verfügbare Werte für Dienstziele sind: HS_GEN4_1, HS_GEN4_2, HS_GEN4_4, HS_GEN4_8, HS_GEN4_16, HS_GEN4_24, HS_Gen5_2, HS_Gen5_4, HS_Gen5_8, HS_Gen5_16, HS_Gen5_24, HS_Gen5_32, HS_Gen5_48, HS_Gen5_80.Available values for service objective are: HS_GEN4_1 HS_GEN4_2 HS_GEN4_4 HS_GEN4_8 HS_GEN4_16, HS_GEN4_24, HS_Gen5_2, HS_Gen5_4, HS_Gen5_8, HS_Gen5_16, HS_Gen5_24, HS_Gen5_32, HS_Gen5_48, HS_Gen5_80.

Dienstzielbeschreibungen und weitere Informationen zu Größe, Editionen und Dienstzielkombinationen finden Sie unter Azure SQL Database Service Tiers and Performance Levels (Dienstebenen und Leistungsstufen von Azure SQL-Datenbank), DTU-based resource limits (DTU-basierte Ressourcenbeschränkungen) und vCore-based resource limits (vCore-basierte Ressourcenbeschränkungen).For service objective descriptions and more information about the size, editions, and the service objectives combinations, see Azure SQL Database Service Tiers and Performance Levels, DTU-based resource limits and vCore-based resource limits. Die Unterstützung für PRS-Dienstziele wurde entfernt.Support for PRS service objectives have been removed. Wenn Sie Fragen haben, wenden Sie sich an den E-Mail-Alias premium-rs@microsoft.com.For questions, use this e-mail alias: premium-rs@microsoft.com.

MODIFY (SERVICE_OBJECTIVE = ELASTIC_POOL (name = <elastic_pool_name>): Wenn Sie eine vorhandene Datenbank zu einem Pool für elastische Datenbanken hinzufügen möchten, müssen Sie das SERVICE_OBJECTIVE-Objekt der Datenbank auf ELASTIC_POOL festlegen und den Namen des Pools für elastische Datenbanken angeben.MODIFY (SERVICE_OBJECTIVE = ELASTIC_POOL (name = <elastic_pool_name>) To add an existing database to an elastic pool, set the SERVICE_OBJECTIVE of the database to ELASTIC_POOL and provide the name of the elastic pool. Sie können mit dieser Option auch die Datenbank in einen anderen Pool für elastische Datenbanken innerhalb desselben Servers ändern.You can also use this option to change the database to a different elastic pool within the same server. Weitere Informationen finden Sie unter Erstellen und Verwalten eines Pools für elastische Datenbanken von SQL-Database.For more information, see Create and manage a SQL Database elastic pool. Wenn Sie eine Datenbank aus einem Pool für elastische Datenbanken entfernen möchten, legen Sie mithilfe von ALTER DATABASE das SERVICE_OBJECTIVE-Objekt auf eine einzelne Leistungsebene der Datenbank fest.To remove a database from an elastic pool, use ALTER DATABASE to set the SERVICE_OBJECTIVE to a single database performance level.

Hinweis

Datenbanken im Diensttarif „Hyperscale“ können nicht zu einem Pool für elastische Datenbanken hinzugefügt werden.Databases in the Hyperscale service tier cannot be added to an elastic pool.

ADD SECONDARY ON SERVER <partner_server_name>ADD SECONDARY ON SERVER <partner_server_name>

Erstellt eine georeplizierte sekundäre Datenbank mit dem gleichen Namen auf einem Partnerserver. Dabei wird die lokale Datenbank in eine georeplizierte primäre Datenbank umgewandelt und mit dem asynchronen Replizieren von Daten von der primären in die neue sekundäre Datenbank begonnen.Creates a geo-replication secondary database with the same name on a partner server, making the local database into a geo-replication primary, and begins asynchronously replicating data from the primary to the new secondary. Der Befehl schlägt fehl, wenn auf dem sekundären Server bereits eine Datenbank mit dem gleichen Namen vorhanden ist.If a database with the same name already exists on the secondary, the command fails. Der Befehl wird in der Masterdatenbank auf dem Server ausgeführt, der Host der lokalen Datenbank ist, die zur primären Datenbank wird.The command is executed on the master database on the server hosting the local database that becomes the primary.

Wichtig

Der Diensttarif „Hyperscale“ unterstützt derzeit keine Georeplikation.The Hyperscale service tier does not currently support geo-replication.

WITH ALLOW_CONNECTIONS { ALL | NO }: Wenn ALLOW_CONNECTIONS nicht angegeben ist, wird es standardmäßig auf ALL festgelegt.WITH ALLOW_CONNECTIONS { ALL | NO } When ALLOW_CONNECTIONS is not specified, it is set to ALL by default. Wenn ALL festgelegt ist, handelt es sich um eine schreibgeschützte Datenbank, zu der alle Anmeldenamen mit den entsprechenden Berechtigungen eine Verbindung herstellen dürfen.If it is set ALL, it is a read-only database that allows all logins with the appropriate permissions to connect.

WITH SERVICE_OBJECTIVE { S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, P15, GP_GEN4_1, GP_GEN4_2, GP_GEN4_3, GP_GEN4_4, GP_GEN4_5, GP_GEN4_6, GP_GEN4_7, GP_GEN4_8, GP_GEN4_7, GP_GEN4_8, GP_GEN4_9, GP_GEN4_10, GP_GEN4_16, GP_GEN4_24, BC_GEN4_1, BC_GEN4_2, BC_GEN4_3, BC_GEN4_4, BC_GEN4_5, BC_GEN4_6, BC_GEN4_7, BC_GEN4_8, BC_GEN4_9, BC_GEN4_10, BC_GEN4_16, BC_GEN4_24, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, BC_Gen5_20, BC_Gen5_24, BC_Gen5_32,BC_Gen5_40, BC_Gen5_80 }WITH SERVICE_OBJECTIVE { S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, P15, GP_GEN4_1, GP_GEN4_2, GP_GEN4_3, GP_GEN4_4, GP_GEN4_5, GP_GEN4_6, GP_GEN4_7, GP_GEN4_8, GP_GEN4_7, GP_GEN4_8, GP_GEN4_9, GP_GEN4_10, GP_GEN4_16, GP_GEN4_24, BC_GEN4_1, BC_GEN4_2, BC_GEN4_3, BC_GEN4_4, BC_GEN4_5, BC_GEN4_6, BC_GEN4_7, BC_GEN4_8, BC_GEN4_9, BC_GEN4_10, BC_GEN4_16, BC_GEN4_24, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, BC_Gen5_20, BC_Gen5_24, BC_Gen5_32,BC_Gen5_40, BC_Gen5_80 }

Wenn SERVICE_OBJECTIVE nicht angegeben ist, wird die sekundäre Datenbank auf derselben Dienstebene wie die primäre Datenbank erstellt.When SERVICE_OBJECTIVE is not specified, the secondary database is created at the same service level as the primary database. Wenn SERVICE_OBJECTIVE angegeben ist, wird die sekundäre Datenbank auf der angegebenen Ebene erstellt.When SERVICE_OBJECTIVE is specified, the secondary database is created at the specified level. Diese Option unterstützt die Erstellung georeplizierter sekundärer Datenbanken mit kostengünstigeren Servicelevels.This option supports creating geo-replicated secondaries with less expensive service levels. Das angegebene SERVICE_OBJECTIVE muss sich in derselben Edition wie die Quelle befinden.The SERVICE_OBJECTIVE specified must be within the same edition as the source. So können Sie beispielsweise nicht „S0“ angeben, wenn es sich bei der Edition um eine Premium-Edition handelt.For example, you cannot specify S0 if the edition is premium.

ELASTIC_POOL (name = <elastic_pool_name>): Wenn ELASTIC_POOL nicht angegeben ist, wird die sekundäre Datenbank nicht in einem Pool für elastische Datenbanken erstellt.ELASTIC_POOL (name = <elastic_pool_name>) When ELASTIC_POOL is not specified, the secondary database is not created in an elastic pool. Wenn ELASTIC_POOL angegeben ist, wird die sekundäre Datenbank im angegebenen Pool erstellt.When ELASTIC_POOL is specified, the secondary database is created in the specified pool.

Wichtig

Der Benutzer, der den Befehl ADD SECONDARY ausführt, muss DBManager auf dem primären Server, db_owner-Mitglied in der lokalen Datenbank und DBManager auf dem sekundären Server sein.The user executing the ADD SECONDARY command must be DBManager on primary server, have db_owner membership in local database, and DBManager on secondary server.

REMOVE SECONDARY ON SERVER <partnerservername>: Entfernt die angegebene georeplizierte sekundäre Datenbank vom angegebenen Server.REMOVE SECONDARY ON SERVER <partner_server_name> Removes the specified geo-replicated secondary database on the specified server. Der Befehl wird in der Masterdatenbank auf dem Server ausgeführt, der Host der primären Datenbank ist.The command is executed on the master database on the server hosting the primary database.

Wichtig

Der Benutzer, der den Befehl REMOVE SECONDARY ausführt, muss DBManager auf dem primären Server sein.The user executing the REMOVE SECONDARY command must be DBManager on the primary server.

FAILOVER: Stuft die sekundäre Datenbank in einer Partnerschaft für die Georeplikation hoch, für die der Befehl ausgeführt wird, damit sie zur primären Datenbank wird, und stuft die aktuelle primäre Datenbank tiefer, sodass diese zur neuen sekundären Datenbank wird.FAILOVER Promotes the secondary database in geo-replication partnership on which the command is executed to become the primary and demotes the current primary to become the new secondary. Im Rahmen dieses Prozesses wird der Georeplikationsmodus vorübergehend vom asynchronen in den synchronen Modus umgeschaltet.As part of this process, the geo-replication mode is temporarily switched from asynchronous mode to synchronous mode. Während des Failoverprozesses:During the failover process:

  1. Die primäre Datenbank übernimmt keine neuen Transaktionen mehr.The primary stops taking new transactions.
  2. Alle ausstehenden Transaktionen werden in der sekundären Datenbank geleert.All outstanding transactions are flushed to the secondary.
  3. Die sekundäre Datenbank wird zur primären Datenbank und beginnt mit der asynchronen Replikation mit der alten primären/der neuen sekundären Datenbank.The secondary becomes the primary and begins asynchronous geo-replication with the old primary / the new secondary.

Durch diese Sequenz wird sichergestellt, dass keine Daten verloren gehen.This sequence ensures that no data loss occurs. Der Zeitraum, in dem keine der beiden Datenbanken verfügbar ist, umfasst 0 bis 25 Sekunden. In dieser Zeit werden die Rollen gewechselt.The period during which both databases are unavailable is on the order of 0-25 seconds while the roles are switched. Der gesamte Vorgang sollte nicht mehr als einer Minute in Anspruch nehmen.The total operation should take no longer than about one minute. Wenn die primäre Datenbank bei der Ausgabe dieses Befehls nicht verfügbar ist, schlägt der Befehl fehl, und es wird eine Fehlermeldung angezeigt, dass die primäre Datenbank nicht verfügbar ist.If the primary database is unavailable when this command is issued, the command fails with an error message indicating that the primary database is not available. Wenn der Failoverprozess nicht abgeschlossen wird und ins Stocken geraten zu sein scheint, können Sie den Befehl zur Erzwingung des Failovers verwenden und einen Datenverlust in Kauf nehmen. Anschließend, wenn eine Wiederherstellung der verloren gegangenen Daten erforderlich sein sollte, können Sie DevOps (CSS) zur Wiederherstellung der verloren gegangenen Daten aufrufen.If the failover process does not complete and appears stuck, you can use the force failover command and accept data loss - and then, if you need to recover the lost data, call devops (CSS) to recover the lost data.

Wichtig

Der Benutzer, der den Befehl FAILOVER ausführt, muss DBManager auf dem primären und dem sekundären Server sein.The user executing the FAILOVER command must be DBManager on both the primary server and the secondary server.

FORCE_FAILOVER_ALLOW_DATA_LOSS: Stuft die sekundäre Datenbank in einer Partnerschaft für die Georeplikation hoch, für die der Befehl ausgeführt wird, damit sie zur primären Datenbank wird, und stuft die aktuelle primäre Datenbank tiefer, sodass diese zur neuen sekundären Datenbank wird.FORCE_FAILOVER_ALLOW_DATA_LOSS Promotes the secondary database in geo-replication partnership on which the command is executed to become the primary and demotes the current primary to become the new secondary. Verwenden Sie diesen Befehl nur dann, wenn die aktuelle primäre Datenbank nicht mehr verfügbar ist.Use this command only when the current primary is no longer available. Er wurde nur für die Notfallwiederherstellung erstellt, wenn die Wiederherstellung der Verfügbarkeit wesentlich und ein Datenverlust akzeptabel ist.It is designed for disaster recovery only, when restoring availability is critical, and some data loss is acceptable.

Während eines erzwungenen Failovers:During a forced failover:

  1. Die angegebene sekundäre Datenbank wird sofort zur primären Datenbank und beginnt, neue Transaktionen zu akzeptieren.The specified secondary database immediately becomes the primary database and begins accepting new transactions.
  2. Wenn die ursprüngliche primäre Datenbank eine Verbindung zur neuen primären Datenbank wiederherstellen kann, wird eine inkrementelle Sicherung von der ursprünglichen primären Datenbank erstellt. Die ursprüngliche primäre Datenbank wird dann zu einer neuen sekundären Datenbank.When the original primary can reconnect with the new primary, an incremental backup is taken on the original primary, and the original primary becomes a new secondary.
  3. Zur Wiederherstellung der Daten aus dieser inkrementellen Sicherung der ursprünglichen primären Datenbank bindet der Benutzer DevOps/CSS ein.To recover data from this incremental backup on the old primary, the user engages devops/CSS.
  4. Wenn es weitere sekundäre Datenbanken gibt, werden diese automatisch so neu konfiguriert, dass sie zu den sekundären Datenbanken der neuen primären Datenbank werden.If there are additional secondaries, they are automatically reconfigured to become secondaries of the new primary. Dieser Vorgang ist asynchron. Bis zum Abschluss des Vorgangs kann es zu einer Verzögerung kommen.This process is asynchronous and there may be a delay until this process completes. Bis zum Abschluss der Neukonfiguration sind die sekundären Datenbanken weiterhin die sekundären Datenbanken der ursprünglichen primären Datenbank.Until the reconfiguration has completed, the secondaries continue to be secondaries of the old primary.

Wichtig

Der Benutzer, der den Befehl FORCE_FAILOVER_ALLOW_DATA_LOSS ausführt, muss auf dem primären und sekundären Server die Rolle dbmanager inne haben.The user executing the FORCE_FAILOVER_ALLOW_DATA_LOSS command must be belong to the dbmanager role on both the primary server and the secondary server.

RemarksRemarks

Verwenden Sie DROP DATABASE, um eine Datenbank zu entfernen.To remove a database, use DROP DATABASE. Verwenden Sie DBCC SHRINKDATABASE, um die Größe einer Datenbank zu reduzieren.To decrease the size of a database, use DBCC SHRINKDATABASE.

Die ALTER DATABASE-Anweisung muss im Autocommitmodus (dem Standardmodus für die Transaktionsverwaltung) ausgeführt werden und ist in einer expliziten oder impliziten Transaktion nicht zugelassen.The ALTER DATABASE statement must run in auto-commit mode (the default transaction management mode) and is not allowed in an explicit or implicit transaction.

Durch das Löschen des Plancaches wird eine Neukompilierung aller nachfolgenden Ausführungspläne verursacht, und möglicherweise entsteht plötzlich eine temporäre Verringerung der Abfrageleistung.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Das SQL ServerSQL Server-Fehlerprotokoll enthält für jeden geleerten Cachespeicher im Plancache folgende informative Meldung: SQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations.For each cleared cachestore in the plan cache, the SQL ServerSQL Server error log contains the following informational message: SQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations. Diese Meldung wird alle fünf Minuten protokolliert, solange der Cache innerhalb dieses Zeitintervalls geleert wird.This message is logged every five minutes as long as the cache is flushed within that time interval.

Der Prozedurcache wird auch im folgenden Szenario geleert: Sie führen mehrere Abfragen für eine Datenbank aus, die über Standardoptionen verfügt.The procedure cache is also flushed in the following scenario: You run several queries against a database that has default options. Anschließend wird die Datenbank gelöscht.Then, the database is dropped.

Anzeigen von DatenbankinformationenViewing Database Information

Sie können Katalogsichten, Systemfunktionen und gespeicherte Systemprozeduren verwenden, um Informationen zu Datenbanken, Dateien und Dateigruppen zurückzugeben.You can use catalog views, system functions, and system stored procedures to return information about databases, files, and filegroups.

BerechtigungenPermissions

Datenbanken können nur durch den Prinzipalanmeldenamen auf Serverebene (vom Bereitstellungsprozess erstellt) oder Mitglieder der Datenbankrolle dbmanager geändert werden.Only the server-level principal login (created by the provisioning process) or members of the dbmanager database role can alter a database.

Wichtig

Der Datenbankbesitzer kann die Datenbank nur ändern, wenn er Mitglied der Rolle dbmanager ist.The owner of the database cannot alter the database unless they are a member of the dbmanager role.

BeispieleExamples

A.A. Überprüfen Sie die Bearbeitungsoptionen, und ändern Sie dieseCheck the edition options and change them

Legt eine Edition und maximale Größe für die Datenbank db1 fest:Sets an edition and max size for database db1:

SELECT Edition = DATABASEPROPERTYEX('db1', 'EDITION'),
        ServiceObjective = DATABASEPROPERTYEX('db1', 'ServiceObjective'),
        MaxSizeInBytes =  DATABASEPROPERTYEX('db1', 'MaxSizeInBytes');

ALTER DATABASE [db1] MODIFY (EDITION = 'Premium', MAXSIZE = 1024 GB, SERVICE_OBJECTIVE = 'P15');

B.B. Verschieben einer Datenbank in einen anderen Pool für elastische DatenbankenMoving a database to a different elastic pool

Verschiebt eine vorhandene Datenbank in einen Pool mit dem Namen pool1:Moves an existing database into a pool named pool1:

ALTER DATABASE db1
MODIFY ( SERVICE_OBJECTIVE = ELASTIC_POOL ( name = pool1 ) ) ;

C.C. Hinzufügen einer sekundären Datenbank für eine GeoreplikationAdd a Geo-Replication Secondary

Erstellt die lesbare sekundäre Datenbank db1 auf dem Server secondaryserver der Datenbank db1 auf dem lokalen Server.Creates a readable secondary database db1 on server secondaryserver of the db1 on the local server.

ALTER DATABASE db1
ADD SECONDARY ON SERVER secondaryserver
WITH ( ALLOW_CONNECTIONS = ALL )

D.D. Entfernen einer sekundären Datenbank für eine GeoreplikationRemove a Geo-Replication Secondary

Entfernt die sekundäre Datenbank db1 auf dem Server secondaryserver.Removes the secondary database db1 on server secondaryserver.

ALTER DATABASE db1
REMOVE SECONDARY ON SERVER testsecondaryserver

E.E. Failover für eine sekundäre Datenbank für eine GeoreplikationFailover to a Geo-Replication Secondary

Stuft die sekundäre Datenbank db1 auf dem Server secondaryserver höher, damit sie bei Ausführung auf dem Server secondaryserver zur neuen primären Datenbank wird.Promotes a secondary database db1 on server secondaryserver to become the new primary database when executed on server secondaryserver.

ALTER DATABASE db1 FAILOVER

E.E. Erzwingen eines Failovers für eine sekundäre Datenbank für eine Georeplikation mit DatenverlustForce Failover to a Geo-Replication Secondary with data loss

Erzwingt die sekundäre Datenbank „db1“ auf dem Server secondaryserver, damit diese bei Ausführung die primäre Datenbank auf dem Server secondaryserver wird, wenn der primäre Server nicht mehr verfügbar ist.Forces a secondary database db1 on server secondaryserver to become the new primary database when executed on server secondaryserver, in the event that the primary server becomes unavailable. Diese Option kann zu Datenverlust führen.This option may incur data loss.

ALTER DATABASE db1 FORCE_FAILOVER_ALLOW_DATA_LOSS

G.G. Aktualisieren einer einzelnen Datenbank auf Dienstebene S0 (Standard Edition, Leistungsebene 0)Update a single database to service tier S0 (standard edition, performance level 0)

Aktualisiert eine einzelne Datenbank auf Standard Edition (Dienstebene) mit einer Leistungsebene von S0 und einer maximalen Größe von 250 GB.Updates a single database to the standard edition (service tier) with a performance level of S0 and a maximum size of 250 GB.

ALTER DATABASE [db1] MODIFY (EDITION = 'Standard', MAXSIZE = 250 GB, SERVICE_OBJECTIVE = 'S0');

Siehe auchSee also

SQL ServerSQL Server SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
** * SQL-Datenbank
verwaltete Instanz *
**  
* SQL Database
managed instance *
 
SQL Data
Warehouse
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Übersicht: Verwaltete Azure SQL-Datenbank-InstanzOverview: Azure SQL Database managed instance

In einer verwalteten Azure SQL-Datenbank-Instanz verwenden Sie diese Anweisung, um Datenbankoptionen festzulegen.In Azure SQL Database managed instance, use this statement to set database options.

Aufgrund ihrer Länge wird die ALTER DATABASE-Syntax in mehrere Artikel aufgeteilt.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE: Der aktuelle Artikel umfasst die Syntax und weitere Informationen zum Festlegen von Datei- und Dateigruppenoptionen, von Datenbankoptionen und des Datenbank-Kompatibilitätsgrad.ALTER DATABASE The current article provides the syntax and related information for setting file and filegroup options, for setting database options, and for setting the database compatibility level.

ALTER DATABASE-Optionen für Dateien und Dateigruppen stellt die Syntax und weitere Informationen zum Hinzufügen und Entfernen von Dateien und Dateigruppen in einer Datenbank sowie zum Ändern der Datei- und Dateigruppenattribute bereit.ALTER DATABASE File and Filegroup Options Provides the syntax and related information for adding and removing files and filegroups from a database, and for changing the attributes of the files and filegroups.

ALTER DATABASE SET-Optionen stellt die Syntax und weitere Informationen zum Ändern der Datenbankattribute mithilfe der SET-Optionen von ALTER DATABASE bereit.ALTER DATABASE SET Options Provides the syntax and related information for changing the attributes of a database by using the SET options of ALTER DATABASE.

ALTER DATABASE-Kompatibilitätsgrad stellt die Syntax und weitere Informationen für die SET-Optionen von ALTER DATABASE bereit, die sich auf die Datenbank-Kompatibilitätsgrade beziehen.ALTER DATABASE Compatibility Level Provides the syntax and related information for the SET options of ALTER DATABASE that are related to database compatibility levels.

SyntaxSyntax

-- Azure SQL Database Syntax  
ALTER DATABASE { database_name | CURRENT }  
{
    MODIFY NAME = new_database_name
  | COLLATE collation_name
  | <file_and_filegroup_options>  
  | SET <option_spec> [ ,...n ]  
}  
[;]

<file_and_filegroup_options>::=  
  <add_or_modify_files>::=  
  <filespec>::=
  <add_or_modify_filegroups>::=  
  <filegroup_updatability_option>::=  

<option_spec> ::=
{
    <auto_option>
  | <change_tracking_option>
  | <cursor_option>
  | <db_encryption_option>  
  | <db_update_option>
  | <db_user_access_option>
  | <delayed_durability_option>
  | <parameterization_option>
  | <query_store_options>
  | <snapshot_option>
  | <sql_option>
  | <target_recovery_time_option>
  | <temporal_history_retention>
  | <compatibility_level>
      { 150 | 140 | 130 | 120 | 110 | 100 | 90 }

}  

ArgumenteArguments

database_name Der Name der Datenbank, die geändert werden soll.database_name Is the name of the database to be modified.

CURRENT: Legt fest, dass die zurzeit verwendete Datenbank geändert werden soll.CURRENT Designates that the current database in use should be altered.

RemarksRemarks

Verwenden Sie DROP DATABASE, um eine Datenbank zu entfernen.To remove a database, use DROP DATABASE. Verwenden Sie DBCC SHRINKDATABASE, um die Größe einer Datenbank zu reduzieren.To decrease the size of a database, use DBCC SHRINKDATABASE.

Die ALTER DATABASE-Anweisung muss im Autocommitmodus (dem Standardmodus für die Transaktionsverwaltung) ausgeführt werden und ist in einer expliziten oder impliziten Transaktion nicht zugelassen.The ALTER DATABASE statement must run in auto-commit mode (the default transaction management mode) and is not allowed in an explicit or implicit transaction.

Durch das Löschen des Plancaches wird eine Neukompilierung aller nachfolgenden Ausführungspläne verursacht, und möglicherweise entsteht plötzlich eine temporäre Verringerung der Abfrageleistung.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Für jeden geleerten Cachespeicher im Plancache enthält das SQL ServerSQL Server-Fehlerprotokoll folgende Meldung zur Information: „SQL ServerSQL Server hat für den "%2!s!"-Cachespeicher (Bestandteil des Plancache) %1!s! Leerungen des Cachespeichers gefunden, die von Datenbankwartungs- oder Neukonfigurierungsvorgängen ausgelöst wurden.“.For each cleared cachestore in the plan cache, the SQL ServerSQL Server error log contains the following informational message: " SQL ServerSQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations". Diese Meldung wird alle fünf Minuten protokolliert, solange der Cache innerhalb dieses Zeitintervalls geleert wird.This message is logged every five minutes as long as the cache is flushed within that time interval.

Der Plancache wird auch dann geleert, wenn mehrere Abfragen auf eine Datenbank angewendet werden, die Standardoptionen aufweist.The plan cache is also flushed when several queries are executed against a database that has default options. Anschließend wird die Datenbank gelöscht.Then, the database is dropped.

Anzeigen von DatenbankinformationenViewing Database Information

Sie können Katalogsichten, Systemfunktionen und gespeicherte Systemprozeduren verwenden, um Informationen zu Datenbanken, Dateien und Dateigruppen zurückzugeben.You can use catalog views, system functions, and system stored procedures to return information about databases, files, and filegroups.

BerechtigungenPermissions

Datenbanken können nur durch den Prinzipalanmeldenamen auf Serverebene (vom Bereitstellungsprozess erstellt) oder Mitglieder der Datenbankrolle dbcreator geändert werden.Only the server-level principal login (created by the provisioning process) or members of the dbcreator database role can alter a database.

Wichtig

Der Datenbankbesitzer kann die Datenbank nur ändern, wenn er Mitglied der Rolle dbcreator ist.The owner of the database cannot alter the database unless they are a member of the dbcreator role.

BeispieleExamples

Die folgenden Beispiele zeigen, wie die automatische Optimierung festgelegt wird und wie eine Datei in einer verwalteten Instanz hinzugefügt wird.The following examples show you how to set automatic tuning and how to add a file in a managed instance.

ALTER DATABASE WideWorldImporters
  SET AUTOMATIC_TUNING ( FORCE_LAST_GOOD_PLAN = ON)

ALTER DATABASE WideWorldImporters
  ADD FILE (NAME = 'data_17')

Siehe auchSee also

SQL ServerSQL Server SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
** * SQL Data
Warehouse *
**  
* SQL Data
Warehouse *
 
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Übersicht: Azure SQL Data WarehouseOverview: Azure SQL Data Warehouse

In Azure SQL Data Warehouse ändert ALTER DATABASE den Namen, die maximale Größe oder das Dienstziel einer Datenbank.In Azure SQL Dta Warehouse, 'ALTER DATABASE' modifies the name, maximum size, or service objective for a database.

Aufgrund ihrer Länge wird die ALTER DATABASE-Syntax in mehrere Artikel aufgeteilt.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE SET-Optionen stellt die Syntax und weitere Informationen zum Ändern der Datenbankattribute mithilfe der SET-Optionen von ALTER DATABASE bereit.ALTER DATABASE SET Options Provides the syntax and related information for changing the attributes of a database by using the SET options of ALTER DATABASE.

SyntaxSyntax

ALTER DATABASE { database_name | CURRENT }
{
  MODIFY NAME = new_database_name
| MODIFY ( <edition_option> [, ... n] )
| SET <option_spec> [ ,...n ] [ WITH <termination> ]
}
[;]

<edition_option> ::=
      MAXSIZE = {
            250 | 500 | 750 | 1024 | 5120 | 10240 | 20480
          | 30720 | 40960 | 51200 | 61440 | 71680 | 81920
          | 92160 | 102400 | 153600 | 204800 | 245760
      } GB
      | SERVICE_OBJECTIVE = {
            'DW100' | 'DW200' | 'DW300' | 'DW400' | 'DW500'
          | 'DW600' | 'DW1000' | 'DW1200' | 'DW1500' | 'DW2000'
          | 'DW3000' | 'DW6000' | 'DW500c' | 'DW1000c' | 'DW1500c'
          | 'DW2000c' | 'DW2500c' | 'DW3000c' | 'DW5000c' | 'DW6000c'
          | 'DW7500c' | 'DW10000c' | 'DW15000c' | 'DW30000c'
      }

ArgumenteArguments

database_name Gibt den Namen der zu ändernden Datenbank an.database_name Specifies the name of the database to be modified.

MODIFY NAME new_database_name Benennt die Datenbank in den angegebenen Namen new_database_name um.MODIFY NAME = new_database_name Renames the database with the name specified as new_database_name.

MAXSIZE Der Standardwert ist 245.760 GB (240 TB).MAXSIZE The default is 245,760 GB (240 TB).

Gilt für: Optimiert für Compute Gen1Applies to: Optimized for Compute Gen1

Der Wert für die maximal zulässige Größe der DatenbankThe maximum allowable size for the database. Die Datenbank kann nicht größer sein als MAXSIZE.The database cannot grow beyond MAXSIZE.

Gilt für: Optimiert für Compute Gen2Applies to: Optimized for Compute Gen2

Die maximal zulässige Größe für Rowstore-Daten in der DatenbankThe maximum allowable size for rowstore data in the database. Daten, die in Rowstore-Tabellen, dem Deltastore eines Columnstore-Index oder einem nicht gruppierten Index für einen gruppierten Columnstore-Index gespeichert sind, können MAXSIZE nicht übersteigen.Data stored in rowstore tables, a columnstore index's deltastore, or a nonclustered index on a clustered columnstore index cannot grow beyond MAXSIZE. Daten, die im Columnstore-Format komprimiert sind, haben kein Größenlimit und werden nicht durch MAXSIZE beschränkt.Data compressed into columnstore format does not have a size limit and is not constrained by MAXSIZE.

SERVICE_OBJECTIVE Gibt die Leistungsebene an.SERVICE_OBJECTIVE Specifies the performance level. Weitere Informationen zu Dienstzielen für SQL Data Warehouse finden Sie unter Data Warehouse-Einheiten (DWUs).For more information about service objectives for SQL Data Warehouse, see Data Warehouse Units (DWUs).

BerechtigungenPermissions

Folgende Berechtigungen sind erforderlich:Requires these permissions:

  • Der Prinzipalanmeldename auf Serverebene (der während des Bereitstellungsprozesses erstellt wurde) oderServer-level principal login (the one created by the provisioning process), or
  • Mitgliedschaft in der dbmanager-DatenbankrolleMember of the dbmanager database role.

Der Datenbankbesitzer kann die Datenbank nur ändern, wenn er Mitglied der Rolle dbmanager ist.The owner of the database cannot alter the database unless the owner is a member of the dbmanager role.

Allgemeine HinweiseGeneral Remarks

Bei der aktuellen Datenbank muss es sich um eine andere Datenbank als die handeln, die Sie ändern. Deshalb muss ALTER ausgeführt werden, während eine Verbindung zur Masterdatenbank besteht.The current database must be a different database than the one you are altering, therefore ALTER must be run while connected to the master database.

SQL Data Warehouse ist auf COMPATIBILITY_LEVEL 130 festgelegt und kann nicht verändert werden.SQL Data Warehouse is set to COMPATIBILITY_LEVEL 130 and cannot be changed. Weitere Informationen finden Sie unter Verbesserte Abfrageleistung mit Kompatibilitätsgrad 130 in Azure SQL-Datenbank.For more details, see Improved Query Performance with Compatibility Level 130 in Azure SQL Database.

EinschränkungenLimitations and Restrictions

Für die Ausführung von ALTER DATABASE muss die Datenbank online sein und darf sich nicht im angehaltenen Zustand befinden.To run ALTER DATABASE, the database must be online and cannot be in a paused state.

Die Anweisung ALTER DATABASE muss im Autocommitmodus ausgeführt werden. Dabei handelt es sich um den Standardmodus für die Transaktionsverwaltung.The ALTER DATABASE statement must run in auto-commit mode, which is the default transaction management mode. Dies wird in den Verbindungseinstellungen festgelegt.This is set in the connection settings.

Die Anweisung ALTER DATABASE darf nicht Teil einer benutzerdefinierten Transaktion sein.The ALTER DATABASE statement cannot be part of a user-defined transaction.

Sie können die Datenbanksortierung nicht ändern.You cannot change the database collation.

BeispieleExamples

Stellen Sie vor dem Ausführen dieser Beispiele sicher, dass es sich bei der Datenbank, die Sie ändern, nicht um die aktuelle Datenbank handelt.Before you run these examples, make sure the database you are altering is not the current database. Bei der aktuellen Datenbank muss es sich um eine andere Datenbank als die handeln, die Sie ändern. Deshalb muss ALTER ausgeführt werden, während eine Verbindung zur Masterdatenbank besteht.The current database must be a different database than the one you are altering, therefore ALTER must be run while connected to the master database.

A.A. Ändern des DatenbanknamensChange the name of the database

ALTER DATABASE AdventureWorks2012
MODIFY NAME = Northwind;

B.B. Ändern der maximalen DatenbankgrößeChange max size for the database

ALTER DATABASE dw1 MODIFY ( MAXSIZE=10240 GB );

C.C. Ändern der LeistungsebeneChange the performance level

ALTER DATABASE dw1 MODIFY ( SERVICE_OBJECTIVE= 'DW1200' );

D.D. Ändern der maximalen Größe und der LeistungsebeneChange the max size and the performance level

ALTER DATABASE dw1 MODIFY ( MAXSIZE=10240 GB, SERVICE_OBJECTIVE= 'DW1200' );

Weitere InformationenSee Also

SQL ServerSQL Server SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
SQL Data
Warehouse
SQL Data
Warehouse
** * Analytics
Platform System (PDW) *
**  
* Analytics
Platform System (PDW) *
 

 

Übersicht: AnalyseplattformsystemOverview: Analytics Platform System

Ändert die Optionen für die maximale Datenbankgröße für replizierte und verteilte Tabellen sowie für das Transaktionsprotokoll in PDW.Modifies the maximum database size options for replicated tables, distributed tables, and the transaction log in PDW. Verwenden Sie diese Anweisung, um die Speicherplatzzuordnungen für eine Datenbank zu verwalten, wenn sich diese vergrößert oder verkleinert.Use this statement to manage disk space allocations for a database as it grows or shrinks in size. Darüber hinaus wird in diesem Artikel die Syntax zum Festlegen von Datenbankoptionen in PDW beschrieben.The article also describes syntax related to setting database options in PDW.

SyntaxSyntax

-- 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 }

ArgumenteArguments

database_name Der Name der Datenbank, die geändert werden soll.database_name The name of the database to be modified. Um eine Liste von Datenbanken auf dem Gerät anzuzeigen, verwenden Sie sys.databases.To display a list of databases on the appliance, use sys.databases.

AUTOGROW = { ON | OFF } Aktualisiert die Option AUTOGROW.AUTOGROW = { ON | OFF } Updates the AUTOGROW option. Wenn AUTOGROW ON ist, erhöht Parallel Data WarehouseParallel Data Warehouse automatisch den zugeordneten Speicherplatz für replizierte Tabellen und verteilte Tabellen sowie das Transaktionsprotokoll nach Bedarf, um den gesteigerten Speicheranforderungen gerecht zu werden.When AUTOGROW is ON, Parallel Data WarehouseParallel Data Warehouse automatically increases the allocated space for replicated tables, distributed tables, and the transaction log as necessary to accommodate growth in storage requirements. Wenn AUTOGROW OFF ist, gibt Parallel Data WarehouseParallel Data Warehouse einen Fehler zurück, wenn replizierte Tabellen, verteilte Tabellen oder das Transaktionsprotokoll die Einstellung für die maximale Größe überschreiten.When AUTOGROW is OFF, Parallel Data WarehouseParallel Data Warehouse returns an error if replicated tables, distributed tables, or the transaction log exceeds the maximum size setting.

REPLICATED_SIZE = size [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.REPLICATED_SIZE = size [GB] Specifies the new maximum gigabytes per Compute node for storing all of the replicated tables in the database being altered. Wenn Sie Appliancespeicherplatz planen, müssen Sie REPLICATED_SIZE mit der Anzahl der Computeknoten in der Appliance multiplizieren.If you are planning for appliance storage space, you will need to multiply REPLICATED_SIZE by the number of Compute nodes in the appliance.

DISTRIBUTED_SIZE = size [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.DISTRIBUTED_SIZE = size [GB] Specifies the new maximum gigabytes per database for storing all of the distributed tables in the database being altered. Die Größe wird auf alle Computeknoten der Appliance verteilt.The size is distributed across all of the Compute nodes in the appliance.

LOG_SIZE = size [GB] Gibt die neue maximale Anzahl von Gigabyte pro Datenbank für die Speicherung aller Transaktionsprotokolle in der Datenbank an, die geändert werden.LOG_SIZE = size [GB] Specifies the new maximum gigabytes per database for storing all of the transaction logs in the database being altered. Die Größe wird auf alle Computeknoten der Appliance verteilt.The size is distributed across all of the Compute nodes in the appliance.

ENCRYPTION { ON | OFF } Legt fest, ob die Datenbank verschlüsselt (ON) oder nicht verschlüsselt (OFF) werden soll.ENCRYPTION { ON | OFF } Sets the database to be encrypted (ON) or not encrypted (OFF). Die Verschlüsselung kann nur für Parallel Data WarehouseParallel Data Warehouse konfiguriert werden, wenn sp_pdw_database_encryption auf 1 festgelegt wurde.Encryption can only be configured for Parallel Data WarehouseParallel Data Warehouse when sp_pdw_database_encryption has been set to 1. Ein Datenbank-Verschlüsselungsschlüssel muss erstellt werden, bevor Transparent Data Encryption konfiguriert werden kann.A database encryption key must be created before transparent data encryption can be configured. 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 | OFF } Wenn die Option zum automatischen Erstellen von Statistiken, AUTO_CREATE_STATISTICS, auf ON festgelegt ist, erstellt der Abfrageoptimierer nach Bedarf Statistiken für einzelne Spalten im Abfrageprädikat, um Kardinalitätsschätzungen für den Abfrageplan zu verbessern.SET AUTO_CREATE_STATISTICS { ON | OFF } When the automatic create statistics option, AUTO_CREATE_STATISTICS, is ON, the Query Optimizer creates statistics on individual columns in the query predicate, as necessary, to improve cardinality estimates for the query plan. Diese Statistiken für einzelne Spalten werden für Spalten erstellt, die noch nicht über ein Histogramm in einem vorhandenen Statistikobjekt verfügen.These single-column statistics are created on columns that do not already have a histogram in an existing statistics object.

Bei neuen Datenbanken, die nach dem Upgrade auf AU7 erstellt wurden, ist die Option standardmäßig auf ON festgelegt.Default is ON for new databases created after upgrading to AU7. Bei Datenbanken, die vor dem Upgrade erstellt wurden, ist die Option standardmäßig auf OFF festgelegt.The default is OFF for databases created prior to the upgrade.

Weitere Informationen zu Statistiken finden Sie unter StatistikFor more information about statistics, see Statistics

SET AUTO_UPDATE_STATISTICS { ON | OFF } Wenn die Option zum automatischen Aktualisieren von Statistiken, AUTO_UPDATE_STATISTICS, auf ON festgelegt ist, stellt der Abfrageoptimierer fest, wann Statistiken möglicherweise veraltet sind, und aktualisiert diese Statistiken, sobald sie von einer Abfrage verwendet werden.SET AUTO_UPDATE_STATISTICS { ON | OFF } When the automatic update statistics option, AUTO_UPDATE_STATISTICS, is ON, the query optimizer determines when statistics might be out-of-date and then updates them when they are used by a query. Statistiken sind veraltet, wenn die Datenverteilung in der Tabelle oder indizierten Sicht durch die Vorgänge INSERT, UPDATE, DELETE oder MERGE geändert wurde.Statistics become out-of-date after operations insert, update, delete, or merge change the data distribution in the table or indexed view. 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.The query optimizer determines when statistics might be out-of-date by counting the number of data modifications since the last statistics update and comparing the number of modifications to a threshold. Der Schwellenwert basiert auf der Anzahl von Zeilen in der Tabelle oder indizierten Sicht.The threshold is based on the number of rows in the table or indexed view.

Bei neuen Datenbanken, die nach dem Upgrade auf AU7 erstellt wurden, ist die Option standardmäßig auf ON festgelegt.Default is ON for new databases created after upgrading to AU7. Bei Datenbanken, die vor dem Upgrade erstellt wurden, ist die Option standardmäßig auf OFF festgelegt.The default is OFF for databases created prior to the upgrade.

Weitere Informationen zu Statistiken finden Sie unter Statistik.For more information about statistics, see Statistics.

SET AUTO_UPDATE_STATISTICS_ASYNC { ON | OFF } Mit der Option für asynchrone Statistikupdates, AUTO_UPDATE_STATISTICS_ASYNC, wird festgelegt, ob der Abfrageoptimierer das synchrone oder asynchrone Statistikupdate verwendet.SET AUTO_UPDATE_STATISTICS_ASYNC { ON | OFF } The asynchronous statistics update option, AUTO_UPDATE_STATISTICS_ASYNC, determines whether the Query Optimizer uses synchronous or asynchronous statistics updates. Die Option AUTO_UPDATE_STATISTICS_ASYNC gilt für Statistikobjekte, die für Indizes, einzelne Spalten in Abfrageprädikaten und mit der CREATE STATISTICS-Anweisung generierte Statistiken erstellt wurden.The AUTO_UPDATE_STATISTICS_ASYNC option applies to statistics objects created for indexes, single columns in query predicates, and statistics created with the CREATE STATISTICS statement.

Bei neuen Datenbanken, die nach dem Upgrade auf AU7 erstellt wurden, ist die Option standardmäßig auf ON festgelegt.Default is ON for new databases created after upgrading to AU7. Bei Datenbanken, die vor dem Upgrade erstellt wurden, ist die Option standardmäßig auf OFF festgelegt.The default is OFF for databases created prior to the upgrade.

Weitere Informationen zu Statistiken finden Sie unter Statistik.For more information about statistics, see Statistics.

BerechtigungenPermissions

Erfordert die Berechtigung ALTER für die Datenbank.Requires the ALTER permission on the database.

FehlermeldungenError Messages

Wenn „auto-stats“ deaktiviert ist und Sie versuchen, die Statistikeinstellungen zu ändern, gibt PDW die Fehlermeldung This option is not supported in PDW aus.If auto-stats is disabled and you try to alter the statistics settings, PDW outputs the error This option is not supported in PDW. Der Systemadministrator kann „auto-stats“ aktivieren, indem er den Featureschalter AutoStatsEnabled aktiviert.The system administrator can enable auto-stats by enabling the feature switch AutoStatsEnabled.

Allgemeine HinweiseGeneral Remarks

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.The values for REPLICATED_SIZE, DISTRIBUTED_SIZE, and LOG_SIZE can be greater than, equal to, or less than the current values for the database.

EinschränkungenLimitations and Restrictions

Vergrößerungs- und Verkleinerungsvorgänge sind ungenau.Grow and shrink operations are approximate. Die resultierenden tatsächlichen Größen können von den Größenparametern abweichen.The resulting actual sizes can vary from the size parameters.

Parallel Data WarehouseParallel Data Warehouse führt die ALTER DATABASE-Anweisung nicht als unteilbaren Vorgang aus.does not perform the ALTER DATABASE statement as an atomic operation. Wenn die Anweisung während der Ausführung abgebrochen wird, bleiben Änderungen, die bereits durchgeführt wurden, erhalten.If the statement is aborted during execution, changes that have already occurred will remain.

Die Statistikeinstellungen funktionieren nur, wenn der Administrator „auto-stats“ aktiviert hat. Wenn Sie Administrator sind, aktivieren oder deaktivieren Sie „auto-stats“ mithilfe des Featureschalters AutoStatsEnabled.The statistics settings only work if the administrator has enable auto-stats. If you are an administrator, use the feature switch AutoStatsEnabled to enable or disable auto-stats.

SperrverhaltenLocking Behavior

Führt eine gemeinsame Sperre für das DATABASE-Objekt durch.Takes a shared lock on the DATABASE object. Sie können eine Datenbank, die von einem anderen Benutzer im Lese- oder Schreibmodus verwendet wird, nicht ändern.You cannot alter a database that is in use by another user for reading or writing. Dies schließt auch Sitzungen ein, die eine USE-Anweisung für die Datenbank ausgeführt haben.This includes sessions that have issued a USE statement on the database.

LeistungPerformance

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.Shrinking a database can take a large amount of time and system resources, depending on the size of the actual data within the database, and the amount of fragmentation on disk. Das Verkleinern einer Datenbank könnte beispielsweise mehrere Stunden oder noch länger dauern.For example, shrinking a database could take several hours or more.

Bestimmen des VerschlüsselungsfortschrittsDetermining Encryption Progress

Verwenden Sie die folgende Abfrage, um den Fortschritt der transparenten Datenverschlüsselung für die Datenbank als Prozentsatz zu bestimmen:Use the following query to determine progress of database transparent data encryption as a percent:

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 umfangreiches Beispiel mit allen Schritten zur Implementierung von TDE finden Sie unter Transparente Datenverschlüsselung (TDE).For a comprehensive example demonstrating all the steps in implementing TDE, see Transparent Data Encryption (TDE).

Beispiele: Parallel Data WarehouseParallel Data WarehouseExamples: Parallel Data WarehouseParallel Data Warehouse

A.A. Ändern der AUTOGROW-EinstellungAltering the AUTOGROW setting

Legen Sie AUTOGROW für die Datenbank CustomerSales auf ON fest.Set AUTOGROW to ON for database CustomerSales.

ALTER DATABASE CustomerSales
    SET ( AUTOGROW = ON );

B.B. Ändern des maximalen Speicherplatzes für replizierte TabellenAltering the maximum storage for replicated tables

Im folgenden Beispiel wird die Speicherbegrenzung für replizierte Tabellen für die Datenbank CustomerSales auf 1 GB festgelegt.The following example sets the replicated table storage limit to 1 GB for the database CustomerSales. Dabei handelt es sich um die Speicherbegrenzung pro Computeknoten.This is the storage limit per Compute node.

ALTER DATABASE CustomerSales
    SET ( REPLICATED_SIZE = 1 GB );

C.C. Ändern des maximalen Speicherplatzes für verteilte TabellenAltering the maximum storage for distributed tables

Im folgenden Beispiel wird die Speicherbegrenzung für verteilte Tabellen für die Datenbank CustomerSales auf 1000 GB (ein Terabyte) festgelegt.The following example sets the distributed table storage limit to 1000 GB (one terabyte) for the database CustomerSales. Dabei handelt es sich um die gemeinsame Speicherbegrenzung für alle Computeknoten der Appliance und nicht um die Speicherbegrenzung pro Computeknoten.This is the combined storage limit across the appliance for all of the Compute nodes, not the storage limit per Compute node.

ALTER DATABASE CustomerSales
    SET ( DISTRIBUTED_SIZE = 1000 GB );

D.D. Ändern des maximalen Speicherplatzes für das TransaktionsprotokollAltering the maximum storage for the transaction log

Im folgenden Beispiel wird die Datenbank CustomerSales so aktualisiert, dass die maximale Größe des SQL ServerSQL Server-Transaktionsprotokolls für die Appliance 10 GB beträgt.The following example updates the database CustomerSales to have a maximum SQL ServerSQL Server transaction log size of 10 GB for the appliance.

ALTER DATABASE CustomerSales
    SET ( LOG_SIZE = 10 GB );

E.E. Überprüfung auf aktuelle StatistikwerteCheck for current statistics values

Die folgende Abfrage gibt die aktuellen Statistikwerte für sämtliche Datenbanken zurück.The following query returns the current statistics values for all databases. Der Wert 1 bedeutet, dass das Feature aktiviert ist, und 0 (null) bedeutet, dass das Feature deaktiviert ist.The value 1 means the feature is on, and a 0 means the feature is off.

SELECT NAME,
    is_auto_create_stats_on,
    is_auto_update_stats_on,
    is_auto_update_stats_async_on
FROM sys.databases;

F.F. Aktivieren der automatischen Erstellung und des automatischen Updates von Statistiken für eine DatenbankEnable auto-create and auto-update stats for a database

Mit der folgenden Anweisung können Sie Statistiken zur automatischen und asynchronen Erstellung und Aktualisierung für die Datenbank „CustomerSales“ aktivieren.Use the following statement to enable create and update statistics automatically and asynchronously for database, CustomerSales. Dadurch werden zur Erstellung hochwertiger Abfragepläne nach Bedarf einspaltige Statistiken erstellt und aktualisiert.This creates and updates single-column statistics as necessary to create high quality query plans.

ALTER DATABASE CustomerSales
    SET AUTO_CREATE_STATISTICS ON;
ALTER DATABASE CustomerSales
    SET AUTO_UPDATE_STATISTICS ON;
ALTER DATABASE
    SET AUTO_UPDATE_STATISTICS_ASYNC ON;

Weitere InformationenSee Also