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

Изменяет определенные параметры конфигурации базы данных.Modifies certain configuration options of a database.

Эта статья приводит синтаксис, аргументы, комментарии, разрешения и примеры для любых выбранных продуктов SQL.This article provides the syntax, arguments, remarks, permissions, and examples for whichever SQL product you choose.

Дополнительные сведения о соглашениях о синтаксисе см. в статье Соглашения о синтаксисе в Transact-SQL.For more information about the syntax conventions, see Transact-SQL Syntax Conventions.

Выберите продукт!Click a product!

В следующей строке щелкните имя продукта, который вас интересует.In the following row, click whichever product name you are interested in. На этой веб-странице отобразится другой контент, относящийся к выбранному продукту.The click displays different content here on this webpage, appropriate for whichever product you click.

* SQL Server *  * SQL Server *   Отдельная база данных/эластичный пул Базы данных SQL
SQL Database
single database/elastic pool
Управляемый экземпляр Базы данных SQL
SQL Database
managed instance
Хранилище данных
SQL
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Общие сведения. SQL ServerOverview: SQL Server

В SQL Server эта инструкция изменяет базу данных или файлы и файловые группы, связанные с базой данных.In SQL Server, this statement modifies a database, or the files and filegroups associated with the database. Добавляет или удаляет файлы и файловые группы из базы данных, изменяет атрибуты базы данных или ее файлов и файловых групп, изменяет параметры сортировки базы данных и устанавливает параметры базы данных.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. Моментальные снимки базы данных изменить нельзя.Database snapshots cannot be modified. Чтобы изменить параметры базы данных, связанные с репликацией, используйте процедуру sp_replicationdboption.To modify database options associated with replication, use sp_replicationdboption.

Так как синтаксис ALTER DATABASE имеет значительную длину, мы разделили его описание на несколько статей.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE. В этой статье приведены синтаксис и сопутствующие сведения по изменению имени и параметров сортировки базы данных.ALTER DATABASE The current article provides the syntax and related information for changing the name and the collation of a database.

Параметры инструкции ALTER DATABASE для файлов и файловых групп. Синтаксис для добавления или удаления файлов и файловых групп в базе данных, для изменения атрибутов файлов и файловых групп, а также дополнительная информация об этом.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. Синтаксис для изменения атрибутов базы данных с помощью параметров SET команды ALTER DATABASE, а также дополнительная информацию об этом.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. Здесь описан синтаксис параметров SET команды ALTER DATABASE, используемых в процессе зеркального отображения базы данных, а также дополнительная информация об этом.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 (Transact-SQL) SET HADR. Здесь приведен синтаксис параметров Группы доступности AlwaysOnAlways On availability groups команды ALTER DATABASE для настройки базы данных-получателя вторичной реплики группы доступности AlwaysOn, а также дополнительная информация об этом.ALTER DATABASE SET HADR Provides the syntax and related information for the Группы доступности AlwaysOnAlways On availability groups options of ALTER DATABASE for configuring a secondary database on a secondary replica of an Always On availability group.

Уровень совместимости ALTER DATABASE. Синтаксис параметров SET команды ALTER DATABASE, имеющих отношение к уровням совместимости базы данных, а также дополнительная информация об этом.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 — обеспечивает синтаксис для конфигураций с областью базы данных, используемый для параметров уровня отдельной базы данных, таких как выполнение запроса и оптимизация запросов.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.

СинтаксисSyntax

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

АргументыArguments

database_name — имя изменяемой базы данных.database_name Is the name of the database to be modified.

Примечание

Этот параметр недоступен в автономной базе данных.This option is not available in a Contained Database.

CURRENT Применимо к: SQL Server 2012 (11.x)SQL Server 2012 (11.x) и выше.CURRENT Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) and later.

Определяет, что должна быть изменена текущая используемая база данных.Designates that the current database in use should be altered.

MODIFY NAME = new_database_name — присваивает базе данных имя, указанное в аргументе new_database_name.MODIFY NAME =new_database_name Renames the database with the name specified as new_database_name.

COLLATE collation_name — задает параметры сортировки для базы данных.COLLATE collation_name Specifies the collation for the database. Аргументом collation_name может быть либо имя параметров сортировки Windows, либо имя параметров сортировки SQL.collation_name can be either a Windows collation name or a SQL collation name. Если аргумент не указан, базе данных будут назначены параметры сортировки экземпляра SQL ServerSQL Server.If not specified, the database is assigned the collation of the instance of SQL ServerSQL Server.

Примечание

После создания базы данных в База данных SQL AzureAzure SQL Database параметры сортировки невозможно изменить.Collation cannot be changed after database has been created on База данных SQL AzureAzure SQL Database.

При создании баз данных с параметрами сортировки, отличными от параметров сортировки по умолчанию, данные в базе данных всегда учитывают указанные параметры сортировки.When creating databases with other than the default collation, the data in the database always respects the specified collation. Для SQL ServerSQL Server при создании автономной базы данных сведения внутреннего каталога поддерживаются с использованием параметров сортировки SQL ServerSQL Server по умолчанию Latin1_General_100_CI_AS_WS_KS_SC.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.

Список имен параметров сортировки Windows и SQL см. в статье Параметры сортировки.For more information about the Windows and SQL collation names, see COLLATE.

<delayed_durability_option> ::= — применимо к: SQL Server 2014 (12.x)SQL Server 2014 (12.x) и выше.<delayed_durability_option> ::= Applies to: SQL Server 2014 (12.x)SQL Server 2014 (12.x) and later.

Дополнительные сведения см. в статьях Параметры ALTER DATABASE SET (Transact-SQL) и Управление устойчивостью транзакций.For more information see ALTER DATABASE SET Options and Control Transaction Durability.

<file_and_filegroup_options>::=  — дополнительные сведения см. в статье Параметры инструкции ALTER DATABASE для файлов и файловых групп (Transact-SQL).<file_and_filegroup_options>::= For more information, see ALTER DATABASE File and Filegroup Options.

RemarksRemarks

Чтобы удалить базу данных, используйте инструкцию DROP DATABASE.To remove a database, use DROP DATABASE.

Чтобы уменьшить размер базы данных, используйте предложение DBCC SHRINKDATABASE.To decrease the size of a database, use DBCC SHRINKDATABASE.

Инструкция ALTER DATABASE должна выполняться в режиме автоматической фиксации (режим управления транзакциями по умолчанию). Инструкция не разрешена в явной или неявной транзакции.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.

Состояние файла базы данных (например "в сети" или "вне сети") поддерживается независимо от состояния базы данных.The state of a database file (for example, online or offline), is maintained independently from the state of the database. Дополнительные сведения см. в разделе Состояния файлов.For more information, see File States. Состояние файлов в пределах файловой группы определяет доступность файловой группы в целом.The state of the files within a filegroup determines the availability of the whole filegroup. Чтобы файловая группа была доступна, необходимо, чтобы все файлы в файловой группе находились в режиме в сети.For a filegroup to be available, all files within the filegroup must be online. Если файловая группа вне сети, то любая попытка обращения к файловой группе с помощью инструкции SQL закончится ошибкой.If a filegroup is offline, any try to access the filegroup by an SQL statement will fail with an error. При создании планов запросов для инструкций SELECT оптимизатор запросов избегает некластеризованных индексов и индексированных представлений, которые находятся в файловых группах вне сети.When you build query plans for SELECT statements, the query optimizer avoids nonclustered indexes and indexed views that reside in offline filegroups. Это позволяет успешно выполнить эти инструкции.This enables these statements to succeed. Однако если файловая группа, находящаяся в режиме вне сети, содержит кучу или кластеризованный индекс целевой таблицы, инструкция SELECT не будет выполнена.However, if the offline filegroup contains the heap or clustered index of the target table, the SELECT statements fail. Кроме того, любая инструкция INSERT, UPDATE или DELETE, изменяющая таблицу с любым индексом в файловой группе, находящихся в режиме вне сети, также не будет выполнена.Additionally, any INSERT, UPDATE, or DELETE statement that modifies a table with any index in an offline filegroup will fail.

Если база данных находится в состоянии RESTORING, выполнение большинства инструкций ALTER DATABASE завершится сбоем.When a database is in the RESTORING state, most ALTER DATABASE statements will fail. Исключением является настройка параметров зеркального отображения базы данных.The exception is setting database mirroring options. База данных может находиться в состоянии RESTORING во время выполнения операции восстановления или тогда, когда при операции восстановления базы данных или файла журнала происходит сбой из-за поврежденного файла резервной копии.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.

Кэш планов для экземпляра SQL ServerSQL Server очищается при установке одного из следующих параметров.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

Очистка кэша планов становится причиной перекомпиляции всех последующих планов выполнения и приводит к непредвиденному временному снижению производительности обработки запросов.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Для каждого удаленного хранилища кэша в кэше планов журнал ошибок SQL ServerSQL Server содержит следующее информационное сообщение: 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. Это сообщение добавляется в журнал каждые пять минут при сбросе кэша в течение этого интервала времени.This message is logged every five minutes as long as the cache is flushed within that time interval.

Кроме того, кэш планов сбрасывается в следующих случаях:The plan cache is also flushed in the following scenarios:

  • В базе данных включен параметр базы данных AUTO_CLOSE.A database has the AUTO_CLOSE database option set to ON. Если отсутствуют ссылки соединений пользователя или базы данных, фоновая задача предпримет попытку закрыть и отключить базу данных автоматически.When no user connection references or uses the database, the background task tries to close and shut down the database automatically.
  • Выполняется несколько запросов в базе данных с параметрами по умолчанию.You run several queries against a database that has default options. Затем база данных уничтожается.Then, the database is dropped.
  • Моментальный снимок базы данных для базы данных-источника удален.A database snapshot for a source database is dropped.
  • Успешное перестроение журнала транзакций базы данных.You successfully rebuild the transaction log for a database.
  • Восстановление резервной копии базы данных.You restore a database backup.
  • Отсоединение базы данных.You detach a database.

Изменение параметров сортировки в базе данныхChanging the Database Collation

Прежде чем применить другие параметры сортировки к базе данных, убедитесь, что соблюдены следующие условия.Before you apply a different collation to a database, make sure that the following conditions are in place:

  • Вы являетесь единственным пользователем базы данных в настоящее время.You are the only one currently using the database.
  • Ни один объект, привязанный к схеме, не зависит от параметров сортировки базы данных.No schema-bound object depends on the collation of the database.

Если следующие объекты, зависящие от параметров сортировки базы данных, существуют в базе данных, выполнение инструкции ALTER DATABASEdatabase_nameCOLLATE завершится ошибкой.If the following objects, which depend on the database collation, exist in the database, the ALTER DATABASEdatabase_nameCOLLATE statement will fail. SQL ServerSQL Server возвращает сообщение об ошибке для каждого объекта, блокирующего действие ALTER:will return an error message for each object blocking the ALTER action:

  • определяемые пользователем функции и представления, созданные с помощью параметра SCHEMABINDING;User-defined functions and views created with SCHEMABINDING
  • Вычисляемые столбцыComputed columns
  • CHECK, ограничениеCHECK constraints
  • функции, которые возвращают таблицы с символьными столбцами, имеющими параметры сортировки, унаследованные из параметров сортировки базы данных по умолчанию.Table-valued functions that return tables with character columns with collations inherited from the default database collation

Информация о зависимостях не привязанных к схеме сущностей обновляется автоматически при изменении параметров сортировки базы данных.Dependency information for non-schema-bound entities is automatically updated when the database collation is changed.

При изменении параметров сортировки базы данных дубликаты любых системных имен для объектов базы данных не создаются.Changing the database collation does not create duplicates among any system names for the database objects. Если новые параметры сортировки вызывают повторяющиеся имена, следующие пространства имен могут вызвать сбой при изменении параметров сортировки базы данных:If duplicate names result from the changed collation, the following namespaces may cause the failure of a database collation change:

  • имена объектов, такие как процедуры, таблицы, триггеры или представления;Object names such as a procedure, table, trigger, or view
  • имена схем;Schema names
  • участники, такие как группы, роли или пользователи;Principals such as a group, role, or user
  • имена скалярных типов, таких как системные и определяемые пользователем типы;Scalar-type names such as system and user-defined types
  • имена полнотекстовых каталогов;Full-text catalog names
  • имена столбцов или параметров в пределах объекта;Column or parameter names within an object
  • имена индексов в пределах таблицы.Index names within a table

Повторяющиеся имена, полученные с помощью новых параметров сортировки, могут быть причиной сбоя операции изменения, а SQL ServerSQL Server возвратит сообщение об ошибке, указывающее пространство имен, в котором был найден дубликат.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.

Просмотр сведений о базе данныхViewing Database Information

Для возврата сведений о базах данных, файлах и файловых группах можно использовать представления каталогов, системные функции и системные хранимые процедуры.You can use catalog views, system functions, and system stored procedures to return information about databases, files, and filegroups.

РазрешенияPermissions

Необходимо разрешение ALTER на базу данных.Requires ALTER permission on the database.

ПримерыExamples

A.A. Изменение имени базы данныхChanging the name of a database

В следующем примере имя базы данных AdventureWorks2012 изменяется на Northwind.The following example changes the name of the AdventureWorks2012 database to Northwind.

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

Б.B. Изменение параметров сортировки базы данныхChanging the collation of a database

В следующем примере создается база данных testdb, параметры сортировки которой имеют значение SQL_Latin1_General_CP1_CI_A. Затем имя базы данных testdb изменяется на COLLATE French_CI_AI.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.

Область применения: SQL Server 2008SQL Server 2008 и более поздних версий.Applies to: SQL Server 2008SQL Server 2008 and later.

USE master;
GO

CREATE DATABASE testdb
COLLATE SQL_Latin1_General_CP1_CI_AS ;
GO

ALTER DATABASE testDB
COLLATE French_CI_AI ;
GO

См. также:See Also

SQL ServerSQL Server * Отдельная база данных/эластичный пул Базы данных SQL
*
 
* SQL Database
single database/elastic pool *
 
Управляемый экземпляр Базы данных SQL
SQL Database
managed instance
Хранилище данных
SQL
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Общие сведения. Отдельная база данных или эластичный пул Базы данных SQL AzureOverview: Azure SQL Database single database/elastic pool

В Базе данных SQL Azure эта инструкция предназначена для изменения базы данных на отдельной базе данных или эластичном пуле.In Azure SQL Database, use this statement to modify a database on a single database/elastic pool. Используйте эту инструкцию, чтобы изменить имя базы данных, изменить выпуск и цель обслуживания базы данных, присоединить или удалить базы данных из эластичного пула, настроить параметры базы данных, добавить или удалить дополнительные базы данных для георепликации или настроить уровень совместимости базы данных.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.

Так как синтаксис ALTER DATABASE имеет значительную длину, мы разделили его описание на несколько статей.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE. В этой статье приведены синтаксис и сопутствующие сведения по изменению имени и параметров сортировки базы данных.ALTER DATABASE The current article provides the syntax and related information for changing the name and the collation of a database.

Параметры ALTER DATABASE SET. Синтаксис для изменения атрибутов базы данных с помощью параметров SET команды ALTER DATABASE, а также дополнительная информацию об этом.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. Синтаксис параметров SET команды ALTER DATABASE, имеющих отношение к уровням совместимости базы данных, а также дополнительная информация об этом.ALTER DATABASE Compatibility Level Provides the syntax and related information for the SET options of ALTER DATABASE that are related to database compatibility levels.

СинтаксисSyntax

-- 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'
      | 'GP_Fsv2_72'
      | 'GP_S_Gen5_1' | 'GP_S_Gen5_2' | 'GP_S_Gen5_4' | 'GP_S_Gen5_6' | 'GP_S_Gen5_8'
      | 'GP_S_Gen5_10' | 'GP_S_Gen5_12' | 'GP_S_Gen5_14' | 'GP_S_Gen5_16'
      | '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'
      | 'BC_M_128'
      | '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 }

}

АргументыArguments

database_name — имя изменяемой базы данных.database_name Is the name of the database to be modified.

CURRENT определяет, что должна быть изменена текущая используемая база данных.CURRENT Designates that the current database in use should be altered.

MODIFY NAME = new_database_name — присваивает базе данных имя, указанное в аргументе new_database_name.MODIFY NAME =new_database_name Renames the database with the name specified as new_database_name. В следующем примере имя базы данных db1 изменяется на db2.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']) — изменяет уровень служб базы данных.MODIFY (EDITION = ['basic' | 'standard' | 'premium' |'GeneralPurpose' | 'BusinessCritical' | 'Hyperscale']) Changes the service tier of the database.

В следующем примере выпуск изменяется на premium.The following example changes edition to premium:

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

Важно!

Смена значения параметра EDITION завершается неудачей, если для свойства MAXSIZE базы данных задано значение вне допустимого диапазона, поддерживаемого этим выпуском.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) — указывает максимальный размер базы данных.MODIFY (MAXSIZE = [100 MB | 500 MB | 1 | 1024...4096] GB) Specifies the maximum size of the database. Максимальный размер должен соответствовать допустимому набору значений для свойства EDITION базы данных.The maximum size must comply with the valid set of values for the EDITION property of the database. Смена максимального размера базы данных может потребовать также смены значения EDITION базы данных.Changing the maximum size of the database may cause the database EDITION to be changed.

Примечание

Аргумент MAXSIZE не применяется к отдельным базам данных на уровне служб "Гипермасштабирование".The MAXSIZE argument does not apply to single databases in the Hyperscale service tier. Базы данных уровня обслуживания "Гипермасштабирование" увеличиваются по мере необходимости до 100 ТБ.Hyperscale service tier databases grow as needed, up to 100 TB. Служба "База данных SQL" автоматически добавляет объем хранилища. Задавать максимальный размер не нужно.The SQL Database service adds storage automatically - you do not need to set a maximum size.

Модель DTUDTU model

MAXSIZEMAXSIZE BasicBasic S0–S2S0-S2 S3–S12S3-S12 P1–P6P1-P6 P11–P15P11-P15
100 МБ100 MB
250 МБ250 MB
500 МБ500 MB
1 ГБ1 GB
2 ГБ2 GB √ (D)√ (D)
5 ГБ5 GB НедоступноN/A
10 ГБ10 GB НедоступноN/A
20 ГБ20 GB НедоступноN/A
30 ГБ30 GB НедоступноN/A
40 ГБ40 GB НедоступноN/A
50 ГБ50 GB НедоступноN/A
100 ГБ100 GB НедоступноN/A
150 ГБ150 GB НедоступноN/A
200 ГБ200 GB НедоступноN/A
250 ГБ250 GB НедоступноN/A √ (D)√ (D) √ (D)√ (D)
300 ГБ300 GB НедоступноN/A
400 ГБ400 GB НедоступноN/A
500 ГБ500 GB НедоступноN/A √ (D)√ (D)
750 ГБ750 GB НедоступноN/A
1024 ГБ1024 GB НедоступноN/A √ (D)√ (D)
От 1024 до 4096 ГБ с шагом приращения 256 ГБ *From 1024 GB up to 4096 GB in increments of 256 GB* НедоступноN/A НедоступноN/A НедоступноN/A НедоступноN/A

* P11 и P15 позволяют задавать параметру MAXSIZE значение до 4 ТБ, при этом размер по умолчанию — 1024 ГБ.* P11 and P15 allow MAXSIZE up to 4 TB with 1024 GB being the default size. P11 и P15 могут использовать до 4 ТБ включенного объема хранилища без дополнительной платы.P11 and P15 can use up to 4 TB of included storage at no additional charge. На уровне Premium использование MAXSIZE со значением более 1 ТБ сейчас доступно в следующих регионах: восточная часть США 2, западная часть США, US Gov (Вирджиния), Западная Европа, Центральная Германия, Юго-Восточная Азия, Восточная Япония, Восточная Австралия, Центральная Канада и Восточная Канада.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. Дополнительные сведения об ограничениях по ресурсам для модели DTU см. в разделе Пределы для ресурсов DTU.For additional details regarding resource limitations for the DTU model, see DTU resource limits.

Значение MAXSIZE для модели DTU, если оно задано, должно быть одним из допустимых значений, приведенных в таблице выше для указанного уровня служб.The MAXSIZE value for the DTU model, if specified, has to be a valid value shown in the table above for the service tier specified.

Модель виртуального ядраvCore model

Общее назначение — подготовленное вычисление — 4-е поколение (часть 1)General purpose - provisioned compute - Gen4 (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
Максимальный размер данных (ГБ)Max data size (GB) 10241024 10241024 10241024 15361536 15361536 15361536

Общее назначение — подготовленное вычисление — 4-е поколение (часть 2)General purpose - provisioned compute - Gen4 (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
Максимальный размер данных (ГБ)Max data size (GB) 15361536 30723072 30723072 30723072 40964096 40964096

Общее назначение — подготовленное вычисление — 5-е поколение (часть 1)General purpose - provisioned compute - Gen5 (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
Максимальный размер данных (ГБ)Max data size (GB) 10241024 10241024 10241024 15361536 15361536 15361536 15361536

Общее назначение — подготовленное вычисление — 5-е поколение (часть 2)General purpose - provisioned compute - Gen5 (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
Максимальный размер данных (ГБ)Max data size (GB) 30723072 30723072 30723072 40964096 40964096 40964096 40964096

Общее назначение — подготовленное вычисление — серия Fsv2 (предварительная версия)General purpose - provisioned compute - Fsv2-series (preview)

MAXSIZEMAXSIZE GP_Fsv2_72GP_Fsv2_72
Максимальный размер данных (ГБ)Max data size (GB) 40964096

Общее назначение — бессерверное вычисление — 5-е поколение (часть 1)General purpose - serverless compute - Gen5 (part 1)

MAXSIZEMAXSIZE GP_S_Gen5_1GP_S_Gen5_1 GP_S_Gen5_2GP_S_Gen5_2 GP_S_Gen5_4GP_S_Gen5_4 GP_S_Gen5_6GP_S_Gen5_6 GP_S_Gen5_8GP_S_Gen5_8
Максимальное число виртуальных ядерMax vCores 11 22 44 66 88

Общее назначение — бессерверное вычисление — 5-е поколение (часть 2)General purpose - serverless compute - Gen5 (part 2)

MAXSIZEMAXSIZE GP_S_Gen5_10GP_S_Gen5_10 GP_S_Gen5_12GP_S_Gen5_12 GP_S_Gen5_14GP_S_Gen5_14 GP_S_Gen5_16GP_S_Gen5_16
Максимальное число виртуальных ядерMax vCores 1010 1212 1414 1616

Критически важный для бизнеса — подготовленное вычисление — 4-е поколение (часть 1)Business critical - provisioned compute - Gen4 (part 1)

Уровень производительностиPerformance 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
Максимальный размер данных (ГБ)Max data size (GB) 10241024 10241024 10241024 10241024 10241024 10241024

Критически важный для бизнеса — подготовленное вычисление — 4-е поколение (часть 2)Business critical - provisioned compute - Gen4 (part 2)

Уровень производительностиPerformance 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
Максимальный размер данных (ГБ)Max data size (GB) 10241024 10241024 10241024 10241024 10241024 10241024

Критически важный для бизнеса — подготовленное вычисление — 5-е поколение (часть 1)Business critical - provisioned compute - Gen5 (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
Максимальный размер данных (ГБ)Max data size (GB) 10241024 10241024 10241024 15361536 15361536 15361536 15361536

Критически важный для бизнеса — подготовленное вычисление — 5-е поколение (часть 2)Business critical - provisioned compute - Gen5 (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
Максимальный размер данных (ГБ)Max data size (GB) 30723072 30723072 30723072 40964096 40964096 40964096 40964096

Критически важный для бизнеса — подготовленное вычисление — серия M (предварительная версия)Business critical - provisioned compute - M-series (preview)

MAXSIZEMAXSIZE BC_M_128BC_M_128
Максимальный размер данных (ГБ)Max data size (GB) 40964096

Если при использовании модели виртуальных ядер значение MAXSIZE не задано, используется значение по умолчанию, равное 32 ГБ.If no MAXSIZEvalue is set when using the vCore model, the default is 32 GB. Дополнительные сведения об ограничениях ресурсов в модели виртуальных ядер см. в разделе Ограничения ресурсов в модели виртуальных ядер.For additional details regarding resource limitations for vCore model, see vCore resource limits.

Следующие правила применяются к аргументам MAXSIZE и EDITION:The following rules apply to MAXSIZE and EDITION arguments:

  • Если параметр EDITION указан, а параметр MAXSIZE — нет, то в качестве выпуска будет использоваться значение по умолчанию.If EDITION is specified but MAXSIZE is not specified, the default value for the edition is used. Например, если параметру EDITION задано значение Standard, а параметр MAXSIZE не задан, то параметру MAXSIZE будет автоматически присвоено значение 250 МБ.For example, is the EDITION is set to Standard, and the MAXSIZE is not specified, then the MAXSIZE is automatically set to 250 MB.
  • Если значения MAXSIZE и EDITION не указаны, для EDITION задается значение General Purpose, а для MAXSIZE — 32 ГБ.If neither MAXSIZE nor EDITION is specified, the EDITION is set to General Purpose, and MAXSIZE is set to 32 GB.

MODIFY (SERVICE_OBJECTIVE = <service-objective>) — определяет уровень производительности.MODIFY (SERVICE_OBJECTIVE = <service-objective>) Specifies the performance level. В следующем примере изменяется цель службы базы данных уровня Premium на P6:The following example changes service objective of a premium database to P6:

ALTER DATABASE current
    MODIFY (SERVICE_OBJECTIVE = 'P6');

SERVICE_OBJECTIVESERVICE_OBJECTIVE

  • Для отдельных и включенных в пул баз данныхFor single and pooled databases

    • Определяет уровень производительности.Specifies the performance level. Доступные значения для цели обслуживания: 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, GP_Fsv2_72, 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, BC_M_128.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, GP_Fsv2_72, 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, BC_M_128.
  • Для бессерверных баз данныхFor serverless databases

    • Определяет уровень производительности.Specifies the performance level. Доступные значения для цели обслуживания: GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, GP_S_Gen5_16.Available values for service objective are: GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, GP_S_Gen5_16.
  • Для отдельных баз данных на уровне обслуживания "Гипермасштабирование"For single databases in the Hyperscale service tier

    • Определяет уровень производительности.Specifies the performance level. Доступные значения для цели обслуживания: 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.

Описания целей служб и дополнительные сведения о сочетаниях размеров, выпусков и целей обслуживания см. в разделах Уровни обслуживания и уровни производительности баз данных SQL Azure, Ограничения ресурсов DTU и Ограничения ресурсов в модели виртуальных ядер.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 resource limits and vCore resource limits. Поддержка целей служб PRS была удалена.Support for PRS service objectives have been removed. При возникновении вопросов пишите на следующий адрес premium-rs@microsoft.com.For questions, use this e-mail alias: premium-rs@microsoft.com.

MODIFY (SERVICE_OBJECTIVE = ELASTIC_POOL (name = <имя_эластичного_пула>) — чтобы добавить существующую базу данных в эластичный пул, присвойте параметру SERVICE_OBJECTIVE базы данных значение ELASTIC_POOL и укажите имя эластичного пула.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. Этот параметр также служит для изменения базы данных в другом эластичном пуле на том же сервере.You can also use this option to change the database to a different elastic pool within the same server. Дополнительные сведения см. в разделе Создание эластичного пула баз данных SQL и управление им.For more information, see Create and manage a SQL Database elastic pool. Чтобы удалить базу данных из эластичного пула, используйте инструкцию ALTER DATABASE, чтобы задать в качестве значения SERVICE_OBJECTIVE один уровень производительности базы данных.To remove a database from an elastic pool, use ALTER DATABASE to set the SERVICE_OBJECTIVE to a single database performance level.

Примечание

Базы данных уровня служб "Гипермасштабирование" невозможно добавить в эластичный пул.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>

Создает базу данных-получатель с георепликацией с тем же именем на сервере-участнике, преобразуя локальную базу данных в базу данных-источник с георепликацией, и начинает асинхронную репликацию данных из источника в новую базу данных-получатель.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. Команда завершается ошибкой, если на сервере-получателе уже существует база данных с таким именем.If a database with the same name already exists on the secondary, the command fails. Команда выполняется в базе данных master на сервере с локальной базой данных, которая становится базой данных-источником.The command is executed on the master database on the server hosting the local database that becomes the primary.

Важно!

Сейчас уровень служб "Гипермасштабирование" не поддерживает георепликацию.The Hyperscale service tier does not currently support geo-replication.

WITH ALLOW_CONNECTIONS { ALL | NO }— если параметр ALLOW_CONNECTIONS не указан, ему по умолчанию присваивается значение ALL.WITH ALLOW_CONNECTIONS { ALL | NO } When ALLOW_CONNECTIONS is not specified, it is set to ALL by default. Если указано значение ALL, это база данных только для чтения, позволяющая подключаться всем именам входа с соответствующими разрешениями.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, GP_Fsv2_72, GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, GP_S_Gen5_16, 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, BC_M_128 }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, GP_Fsv2_72, GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, GP_S_Gen5_16, 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, BC_M_128 }

Если параметр SERVICE_OBJECTIVE не указан, база данных-получатель создается на том же уровне службы, что и база данных-источник.When SERVICE_OBJECTIVE is not specified, the secondary database is created at the same service level as the primary database. Если параметр SERVICE_OBJECTIVE указан, база данных-получатель создается с указанным уровнем.When SERVICE_OBJECTIVE is specified, the secondary database is created at the specified level. Этот параметр поддерживает создание геореплицированных объектов-получателей с менее дорогими уровнями обслуживания.This option supports creating geo-replicated secondaries with less expensive service levels. Указанный параметр SERVICE_OBJECTIVE должен находиться в том же выпуске, что и источник.The SERVICE_OBJECTIVE specified must be within the same edition as the source. Например, если используется выпуск Premium, параметр S0 указать невозможно.For example, you cannot specify S0 if the edition is premium.

ELASTIC_POOL (name = <имя_эластичного_пула>) — если параметр ELASTIC_POOL не указан, база данных-получатель не создается в эластичном пуле.ELASTIC_POOL (name = <elastic_pool_name>) When ELASTIC_POOL is not specified, the secondary database is not created in an elastic pool. Если параметр ELASTIC_POOL указан, база данных-получатель создается в указанном пуле.When ELASTIC_POOL is specified, the secondary database is created in the specified pool.

Важно!

Пользователь, выполняющий команду ADD SECONDARY, должен иметь права DBManager на сервере-источнике, членство db_owner в локальной базе данных и права DBManager на сервере-получателе.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 <имя_сервера-партнера> — удаляет указанную геореплицированную базу данных-получатель на указанном сервере.REMOVE SECONDARY ON SERVER <partner_server_name> Removes the specified geo-replicated secondary database on the specified server. Команда выполняется в базе данных master на сервере с локальной базой данных-источником.The command is executed on the master database on the server hosting the primary database.

Важно!

Пользователь, выполняющий команду REMOVE SECONDARY, должен иметь права DBManager на сервере-источнике.The user executing the REMOVE SECONDARY command must be DBManager on the primary server.

FAILOVER — повышает уровень базы данных-получателя в отношении с георепликацией, где выполняется команда, до базы данных-источника и снижает уровень текущей базы данных-источника до новой базы данных-получателя.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. В рамках этого процесса режим георепликации временно переключается с асинхронного на синхронный.As part of this process, the geo-replication mode is temporarily switched from asynchronous mode to synchronous mode. Во время процесса отработки отказа выполняются следующий действия.During the failover process:

  1. База данных-источник перестает принимать новые транзакции.The primary stops taking new transactions.
  2. Все невыполненные транзакции переходят в базу данных-получатель.All outstanding transactions are flushed to the secondary.
  3. База данных-получатель становится базой данных-источником и начинает асинхронную георепликацию со старым источником и новым получателем.The secondary becomes the primary and begins asynchronous geo-replication with the old primary / the new secondary.

Эта последовательность гарантирует отсутствие потери данных.This sequence ensures that no data loss occurs. Период, в течение которого обе базы данных недоступны, составляет примерно 0–25 секунд во время переключения ролей.The period during which both databases are unavailable is on the order of 0-25 seconds while the roles are switched. Вся операция не должна занимать более одной минуты.The total operation should take no longer than about one minute. Если во время выполнения этой команды база данных-источник недоступна, команда выводит сообщение об ошибке, информирующее о недоступности базы данных-источника.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. Если процесс отработки отказа не завершается и зависает, можно использовать команду принудительной отработки отказа и принять потерю данных, а затем, если необходимо восстановить потерянные данные, обратиться в devops (CSS).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.

Важно!

Пользователь, выполняющий команду FAILOVER, должен иметь права DBManager на сервере-источнике и сервере-получателе.The user executing the FAILOVER command must be DBManager on both the primary server and the secondary server.

FORCE_FAILOVER_ALLOW_DATA_LOSS — повышает уровень базы данных-получателя в отношении с георепликацией, где выполняется команда, до базы данных-источника и снижает уровень текущей базы данных-источника до новой базы данных-получателя.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. Эту команду следует использовать только в том случае, если текущая база данных-источник больше не доступна.Use this command only when the current primary is no longer available. Она предназначена для аварийного восстановления, только если очень важно восстановить доступность и допускается потеря некоторых данных.It is designed for disaster recovery only, when restoring availability is critical, and some data loss is acceptable.

Во время принудительной отработки отказа выполняются следующие действия.During a forced failover:

  1. Указанная база данных-получателя немедленно становится базой данных-источником и начинает принимать новые транзакции.The specified secondary database immediately becomes the primary database and begins accepting new transactions.
  2. Когда исходная база данных-источник может повторно установить соединение с новой базой данных-источником, в исходной базе данных-источнике выполняется добавочное резервное копирование и она становится новой базой данных-получателем.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. Чтобы восстановить данные из этой добавочной резервной копии в старой базе данных-источнике, пользователь обращается в devops/CSS.To recover data from this incremental backup on the old primary, the user engages devops/CSS.
  4. Если имеются дополнительные базы данных-получатели, они автоматически настраиваются в качестве баз данных-получателей новой базы данных-источника.If there are additional secondaries, they are automatically reconfigured to become secondaries of the new primary. Этот процесс является асинхронным и до момента его завершения может возникнуть задержка.This process is asynchronous and there may be a delay until this process completes. До завершения повторной настройки базы данных-получатели остаются базами данных-получателями старой базы данных-источника.Until the reconfiguration has completed, the secondaries continue to be secondaries of the old primary.

Важно!

Пользователю, выполняющему команду FORCE_FAILOVER_ALLOW_DATA_LOSS, нужно назначить роль dbmanager на сервере-источнике и сервере-получателе.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

Чтобы удалить базу данных, используйте инструкцию DROP DATABASE.To remove a database, use DROP DATABASE. Чтобы уменьшить размер базы данных, используйте предложение DBCC SHRINKDATABASE.To decrease the size of a database, use DBCC SHRINKDATABASE.

Инструкция ALTER DATABASE должна выполняться в режиме автоматической фиксации (режим управления транзакциями по умолчанию). Инструкция не разрешена в явной или неявной транзакции.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.

Очистка кэша планов становится причиной перекомпиляции всех последующих планов выполнения и приводит к непредвиденному временному снижению производительности обработки запросов.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Для каждого удаленного хранилища кэша в кэше планов журнал ошибок SQL ServerSQL Server содержит следующее информационное сообщение: 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. Это сообщение добавляется в журнал каждые пять минут при сбросе кэша в течение этого интервала времени.This message is logged every five minutes as long as the cache is flushed within that time interval.

Кроме того, кэш процедур сбрасывается в указанных ниже случаях. Выполняется несколько запросов в базе данных с параметрами по умолчанию.The procedure cache is also flushed in the following scenario: You run several queries against a database that has default options. Затем база данных уничтожается.Then, the database is dropped.

Просмотр сведений о базе данныхViewing Database Information

Для возврата сведений о базах данных, файлах и файловых группах можно использовать представления каталогов, системные функции и системные хранимые процедуры.You can use catalog views, system functions, and system stored procedures to return information about databases, files, and filegroups.

РазрешенияPermissions

Для изменения базы данных имя для входа должно быть либо именем для входа субъекта уровня сервера (созданного в процессе подготовки), либо членом роли dbmanager базы данных в базе данных master, либо членом роли db_owner базы данных текущей базе данных, либо dbo базы данных.To alter a database a login must bei either the server-level principal login (created by the provisioning process), a member of the dbmanager database role in master, a member of the db_owner database role in the current database, or dbo of the database.

ПримерыExamples

A.A. Проверка параметров выпуска и их изменениеCheck the edition options and change them

Позволяет задать выпуск и максимальный размер для базы данных db1: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. Перемещение базы данных в другой пул эластичных БДMoving a database to a different elastic pool

Существующая база данных перемещается в пул с именем pool1:Moves an existing database into a pool named pool1:

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

В.C. Добавление базы данных-получателя с георепликациейAdd a Geo-Replication Secondary

Создает доступную для чтения базу данных-получатель db1 на сервере secondaryserver для базы данных db1 на локальном сервере.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. Удаление базы данных-получается с георепликациейRemove a Geo-Replication Secondary

Удаляет базу данных-получателя db1 на сервере secondaryserver.Removes the secondary database db1 on server secondaryserver.

ALTER DATABASE db1
REMOVE SECONDARY ON SERVER testsecondaryserver

Д.E. Переход на базу данных-получатель с георепликациейFailover to a Geo-Replication Secondary

Повышает уровень базы данных-получателя db1 на сервере secondaryserver до новой базы данных-источника при выполнении на сервере secondaryserver.Promotes a secondary database db1 on server secondaryserver to become the new primary database when executed on server secondaryserver.

ALTER DATABASE db1 FAILOVER

Д.E. Принудительный переход на базу данных-получатель с георепликацией с потерей данныхForce Failover to a Geo-Replication Secondary with data loss

Принудительно повышает уровень базы данных-получателя db1 на сервере secondaryserver до новой базы данных-источника при выполнении на сервере secondaryserver в случае, если сервер-источник становится недоступен.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. Повышение уровня может привести к потере данных.This option may incur data loss.

ALTER DATABASE db1 FORCE_FAILOVER_ALLOW_DATA_LOSS

Ж.G. Обновление отдельной базы данных до уровня обслуживания S0 (выпуск Standard Edition, уровень производительности 0)Update a single database to service tier S0 (standard edition, performance level 0)

Обновляет отдельную базу данных до выпуска Standard Edition (уровня обслуживания "Стандартный") с уровнем производительности S0 и максимальным размером 250 ГБ.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');

См. также разделSee also

SQL ServerSQL Server Отдельная база данных/эластичный пул Базы данных SQL
SQL Database
single database/elastic pool
* Управляемый экземпляр Базы данных SQL
*
 
* SQL Database
managed instance *
 
Хранилище данных
SQL
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Общие сведения. Управляемый экземпляр Базы данных SQL AzureOverview: Azure SQL Database managed instance

В управляемом экземпляре Базы данных SQL Azure эта инструкция используется для настройки параметров базы данных.In Azure SQL Database managed instance, use this statement to set database options.

Так как синтаксис ALTER DATABASE имеет значительную длину, мы разделили его описание на несколько статей.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

ALTER DATABASE — эта статья приводит синтаксис и сопутствующие сведения по настройке параметров файлов и файловых групп, баз данных и уровня совместимости баз данных.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 для файлов и файловых групп. Синтаксис для добавления или удаления файлов и файловых групп в базе данных, для изменения атрибутов файлов и файловых групп, а также дополнительная информация об этом.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. Синтаксис для изменения атрибутов базы данных с помощью параметров SET команды ALTER DATABASE, а также дополнительная информацию об этом.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. Синтаксис параметров SET команды ALTER DATABASE, имеющих отношение к уровням совместимости базы данных, а также дополнительная информация об этом.ALTER DATABASE Compatibility Level Provides the syntax and related information for the SET options of ALTER DATABASE that are related to database compatibility levels.

СинтаксисSyntax

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

}  

АргументыArguments

database_name — имя изменяемой базы данных.database_name Is the name of the database to be modified.

CURRENT определяет, что должна быть изменена текущая используемая база данных.CURRENT Designates that the current database in use should be altered.

RemarksRemarks

Чтобы удалить базу данных, используйте инструкцию DROP DATABASE.To remove a database, use DROP DATABASE. Чтобы уменьшить размер базы данных, используйте предложение DBCC SHRINKDATABASE.To decrease the size of a database, use DBCC SHRINKDATABASE.

Инструкция ALTER DATABASE должна выполняться в режиме автоматической фиксации (режим управления транзакциями по умолчанию). Инструкция не разрешена в явной или неявной транзакции.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.

Очистка кэша планов становится причиной перекомпиляции всех последующих планов выполнения и приводит к непредвиденному временному снижению производительности обработки запросов.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Для каждого удаленного хранилища кэша в кэше планов журнал ошибок SQL ServerSQL Server содержит следующее информационное сообщение: "SQL ServerSQL Server обнаружил %d экземпляров, записанных на диск хранилищ кэша для хранилища кэша "%s" (части кэша планов) в результате операций по обслуживанию или изменению конфигурации базы данных".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". Это сообщение добавляется в журнал каждые пять минут при сбросе кэша в течение этого интервала времени.This message is logged every five minutes as long as the cache is flushed within that time interval.

Кроме того, кэш планов сбрасывается, когда выполняется несколько запросов к базе данных с параметрами по умолчанию.The plan cache is also flushed when several queries are executed against a database that has default options. Затем база данных уничтожается.Then, the database is dropped.

Просмотр сведений о базе данныхViewing Database Information

Для возврата сведений о базах данных, файлах и файловых группах можно использовать представления каталогов, системные функции и системные хранимые процедуры.You can use catalog views, system functions, and system stored procedures to return information about databases, files, and filegroups.

РазрешенияPermissions

Изменять базу данных могут только имя входа субъект серверного уровня (созданное в процессе провизионирования) или члены роли базы данных dbcreator.Only the server-level principal login (created by the provisioning process) or members of the dbcreator database role can alter a database.

Важно!

Владелец базы данных не может изменять базу данных, если он не является членом роли dbcreator.The owner of the database cannot alter the database unless they are a member of the dbcreator role.

ПримерыExamples

В следующих примерах показано, как задать автоматическую настройку и как добавить файл в управляемый экземпляр.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')

См. также разделSee also

SQL ServerSQL Server Отдельная база данных/эластичный пул Базы данных SQL
SQL Database
single database/elastic pool
Управляемый экземпляр Базы данных SQL
SQL Database
managed instance
* Хранилище данных
SQL *
 
* SQL Data
Warehouse *
 
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Общие сведения. Хранилище данных SQL AzureOverview: Azure SQL Data Warehouse

В Хранилище данных SQL Azure "ALTER DATABASE" изменяет имя, максимальный размер или цель обслуживания для базы данных.In Azure SQL Dta Warehouse, 'ALTER DATABASE' modifies the name, maximum size, or service objective for a database.

Так как синтаксис ALTER DATABASE имеет значительную длину, мы разделили его описание на несколько статей.Because of its length, the ALTER DATABASE syntax is separated into the multiple articles.

Параметры ALTER DATABASE SET. Синтаксис для изменения атрибутов базы данных с помощью параметров SET команды ALTER DATABASE, а также дополнительная информацию об этом.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.

СинтаксисSyntax

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

АргументыArguments

database_name — задает имя изменяемой базы данных.database_name Specifies the name of the database to be modified.

MODIFY NAME = new_database_name — присваивает базе данных имя, указанное в аргументе new_database_name.MODIFY NAME = new_database_name Renames the database with the name specified as new_database_name.

MAXSIZE — значение по умолчанию: 245 760 ГБ (240 ТБ).MAXSIZE The default is 245,760 GB (240 TB).

Применимо к: Оптимизировано для поколения вычислительных ресурсов 1Applies to: Optimized for Compute Gen1

Максимально допустимый размер базы данных.The maximum allowable size for the database. Размер базы данных не может превышать MAXSIZE.The database cannot grow beyond MAXSIZE.

Применимо к: Оптимизировано для поколения вычислительных ресурсов 2Applies to: Optimized for Compute Gen2

Максимально допустимый размер данных rowstore в базе данных.The maximum allowable size for rowstore data in the database. Размер данных, хранящихся в таблицах rowstore, разностном хранилище индекса columnstore или некластеризованном индексе на базе кластеризованного индекса columnstore, не может превышать MAXSIZE.Data stored in rowstore tables, a columnstore index's deltastore, or a nonclustered index on a clustered columnstore index cannot grow beyond MAXSIZE. Данные, сжатые в формат columnstore, не имеют ограничений на размер и не ограничивается значением MAXSIZE.Data compressed into columnstore format does not have a size limit and is not constrained by MAXSIZE.

SERVICE_OBJECTIVE — определяет уровень производительности.SERVICE_OBJECTIVE Specifies the performance level. Подробные сведения о целях служб для Хранилища данных SQL см. в статье о единицах использования хранилища данных (DWU).For more information about service objectives for SQL Data Warehouse, see Data Warehouse Units (DWUs).

РазрешенияPermissions

Требуются следующие разрешения:Requires these permissions:

  • имя входа субъекта серверного уровня, созданное процессом подготовки, илиServer-level principal login (the one created by the provisioning process), or
  • член роли базы данных dbmanager.Member of the dbmanager database role.

Владелец базы данных не может изменять базу данных, если он не является членом роли dbmanager.The owner of the database cannot alter the database unless the owner is a member of the dbmanager role.

Общие замечанияGeneral Remarks

Текущая база данных должна отличаться от изменяемой, поэтому инструкцию ALTER следует выполнять при подключении к базе данных master.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 задано значение COMPATIBILITY_LEVEL 130, изменить которое невозможно.SQL Data Warehouse is set to COMPATIBILITY_LEVEL 130 and cannot be changed. Дополнительные сведения: Улучшение производительности запросов с уровнем совместимости 130 в базе данных SQL Azure.For more details, see Improved Query Performance with Compatibility Level 130 in Azure SQL Database.

ОграниченияLimitations and Restrictions

Для выполнения ALTER DATABASE база данных должна находиться в сети и не может быть в приостановленном состоянии.To run ALTER DATABASE, the database must be online and cannot be in a paused state.

Инструкция ALTER DATABASE должна выполняться в режиме автофиксации, который является режимом управления транзакциями по умолчанию.The ALTER DATABASE statement must run in auto-commit mode, which is the default transaction management mode. Он задается в параметрах подключения.This is set in the connection settings.

Инструкция ALTER DATABASE не может входить в определенную пользователем транзакцию.The ALTER DATABASE statement cannot be part of a user-defined transaction.

Изменить параметры сортировки базы данных невозможно.You cannot change the database collation.

ПримерыExamples

Перед выполнением этих примеров убедитесь в том, что изменяемая база данных не является текущей базой данных.Before you run these examples, make sure the database you are altering is not the current database. Текущая база данных должна отличаться от изменяемой, поэтому инструкцию ALTER следует выполнять при подключении к базе данных master.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. Изменение имени базы данныхChange the name of the database

ALTER DATABASE AdventureWorks2012
MODIFY NAME = Northwind;

Б.B. Изменение максимального размера базы данныхChange max size for the database

ALTER DATABASE dw1 MODIFY ( MAXSIZE=10240 GB );

В.C. Изменение уровня производительностиChange the performance level

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

Г.D. Изменение максимального размера и уровня производительностиChange the max size and the performance level

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

См. также:See Also

SQL ServerSQL Server Отдельная база данных/эластичный пул Базы данных SQL
SQL Database
single database/elastic pool
Управляемый экземпляр Базы данных SQL
SQL Database
managed instance
Хранилище данных
SQL
SQL Data
Warehouse
* Analytics
Platform System (PDW) *
 
* Analytics
Platform System (PDW) *
 

 

Общие сведения. Система платформы аналитикиOverview: Analytics Platform System

Изменяет параметры максимального размера базы данных для реплицированных таблиц, распределенных таблиц и журнала транзакций в PDW.Modifies the maximum database size options for replicated tables, distributed tables, and the transaction log in PDW. С помощью этой инструкции можно управлять выделением дискового пространства для базы данных по мере изменения ее размера.Use this statement to manage disk space allocations for a database as it grows or shrinks in size. В статье также описан синтаксис, связанный с настройкой параметров баз данных в PDW.The article also describes syntax related to setting database options in PDW.

Синтаксис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 — имя изменяемой базы данных.database_name The name of the database to be modified. Чтобы получить список баз данных на устройстве, используйте представление sys.databases.To display a list of databases on the appliance, use sys.databases.

AUTOGROW = { ON | OFF } — изменяет значение параметра AUTOGROW.AUTOGROW = { ON | OFF } Updates the AUTOGROW option. Если параметр AUTOGROW имеет значение ON, Параллельное хранилище данныхParallel Data Warehouse автоматически увеличивает пространство, выделенное для реплицированных таблиц, распределенных таблиц и журнала транзакций, в соответствии с растущими требованиями к хранилищу.When AUTOGROW is ON, Параллельное хранилище данныхParallel Data Warehouse automatically increases the allocated space for replicated tables, distributed tables, and the transaction log as necessary to accommodate growth in storage requirements. Если параметр AUTOGROW имеет значение OFF, Параллельное хранилище данныхParallel Data Warehouse возвращает ошибку в случае, если размер пространства, занимаемого реплицированными таблицами, распределенными таблицами или журналом транзакций, превышает заданное максимальное значение.When AUTOGROW is OFF, Параллельное хранилище данныхParallel Data Warehouse returns an error if replicated tables, distributed tables, or the transaction log exceeds the maximum size setting.

REPLICATED_SIZE = size [GB] — задает для вычислительного узла новый максимальный размер для хранения всех реплицированных таблиц изменяемой базы данных в гигабайтах.REPLICATED_SIZE = size [GB] Specifies the new maximum gigabytes per Compute node for storing all of the replicated tables in the database being altered. Если вы планируете пространство для хранения данных на устройстве, значение REPLICATED_SIZE необходимо умножить на количество вычислительных узлов на устройстве.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] — задает для базы данных новый максимальный размер для хранения всех распределенных таблиц изменяемой базы данных в гигабайтах.DISTRIBUTED_SIZE = size [GB] Specifies the new maximum gigabytes per database for storing all of the distributed tables in the database being altered. Этот размер распределяется по всем вычислительным узлам на устройстве.The size is distributed across all of the Compute nodes in the appliance.

LOG_SIZE = size [GB] — задает для базы данных новый максимальный размер для хранения всех журналов транзакций изменяемой базы данных в гигабайтах.LOG_SIZE = size [GB] Specifies the new maximum gigabytes per database for storing all of the transaction logs in the database being altered. Этот размер распределяется по всем вычислительным узлам на устройстве.The size is distributed across all of the Compute nodes in the appliance.

ENCRYPTION { ON | OFF } — позволяет включить шифрование базы данных (ON) или отключить его (OFF).ENCRYPTION { ON | OFF } Sets the database to be encrypted (ON) or not encrypted (OFF). Шифрование можно настроить для Параллельное хранилище данныхParallel Data Warehouse только в том случае, если sp_pdw_database_encryption имеет значение 1.Encryption can only be configured for Параллельное хранилище данныхParallel Data Warehouse when sp_pdw_database_encryption has been set to 1. Перед настройкой прозрачного шифрования данных необходимо создать ключ шифрования базы данных.A database encryption key must be created before transparent data encryption can be configured. Дополнительные сведения о шифровании баз данных см. в статье Прозрачное шифрование данных (TDE).For more information about database encryption, see Transparent Data Encryption (TDE).

SET AUTO_CREATE_STATISTICS { ON | OFF } Если параметр AUTO_CREATE_STATISTICS (автоматическое создание статистики) включен, оптимизатор запросов при необходимости создает статистику по отдельным столбцам в предикате запроса, чтобы улучшить оценку кратности для плана запроса.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. Такая статистика по отдельным столбцам создается для столбцов, у которых отсутствует гистограмма в существующем объекте статистики.These single-column statistics are created on columns that do not already have a histogram in an existing statistics object.

Параметр включен по умолчанию для новых баз данных, созданных после обновления до AU7.Default is ON for new databases created after upgrading to AU7. Параметр отключен по умолчанию для баз данных, созданных до обновления.The default is OFF for databases created prior to the upgrade.

Дополнительные сведения о статистике см. в статье Статистика.For more information about statistics, see Statistics

SET AUTO_UPDATE_STATISTICS { ON | OFF } Если параметр AUTO_UPDATE_STATISTICS (автоматическое обновление статистики) включен, оптимизатор запросов определяет, устарела ли статистика, и при необходимости обновляет ее, если она используется в запросе.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. Статистика становится устаревшей, если операции вставки, обновления, удаления или слияния изменяют распределение данных в таблице или индексированном представлении.Statistics become out-of-date after operations insert, update, delete, or merge change the data distribution in the table or indexed view. Оптимизатор запросов определяет, когда статистика может оказаться устаревшей, подсчитывая операции изменения данных с момента последнего обновления статистики и сравнивая количество изменений с пороговым значением.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. Пороговое значение основано на количестве строк в таблице или индексированном представлении.The threshold is based on the number of rows in the table or indexed view.

Параметр включен по умолчанию для новых баз данных, созданных после обновления до AU7.Default is ON for new databases created after upgrading to AU7. Параметр отключен по умолчанию для баз данных, созданных до обновления.The default is OFF for databases created prior to the upgrade.

Дополнительные сведения о статистике см. в статье Статистика.For more information about statistics, see Statistics.

SET AUTO_UPDATE_STATISTICS_ASYNC { ON | OFF } Параметр AUTO_UPDATE_STATISTICS_ASYNC, который управляет асинхронным обновлением статистики, определяет, какой режим обновления статистики использует оптимизатор запросов — синхронный или асинхронный.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. Параметр AUTO_UPDATE_STATISTICS_ASYNC применяется к объектам статистики, создаваемым для индексов, отдельных столбцов в предикатах запросов, и к статистике, создаваемой инструкцией CREATE STATISTICS.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.

Параметр включен по умолчанию для новых баз данных, созданных после обновления до AU7.Default is ON for new databases created after upgrading to AU7. Параметр отключен по умолчанию для баз данных, созданных до обновления.The default is OFF for databases created prior to the upgrade.

Дополнительные сведения о статистике см. в статье Статистика.For more information about statistics, see Statistics.

РазрешенияPermissions

Необходимо разрешение ALTER для базы данных.Requires the ALTER permission on the database.

сообщения об ошибкахError Messages

Если автоматическая статистика отключена, при попытке изменить параметры статистики в PDW выводится сообщение об ошибке This option is not supported in PDW.If auto-stats is disabled and you try to alter the statistics settings, PDW outputs the error This option is not supported in PDW. Системный администратор может включить автоматическую статистику, включив переключатель AutoStatsEnabled.The system administrator can enable auto-stats by enabling the feature switch AutoStatsEnabled.

Общие замечанияGeneral Remarks

Значения параметров REPLICATED_SIZE, DISTRIBUTED_SIZE и LOG_SIZE могут быть больше или меньше текущих значений для базы данных либо равны им.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.

ОграниченияLimitations and Restrictions

Операции увеличения и уменьшения размера являются приблизительными.Grow and shrink operations are approximate. Полученные фактические размеры могут отличаться от значений параметров.The resulting actual sizes can vary from the size parameters.

Параллельное хранилище данныхParallel Data Warehouse выполняет инструкцию ALTER DATABASE не как атомарную операцию.does not perform the ALTER DATABASE statement as an atomic operation. Если выполнение инструкции прерывается, уже внесенные изменения сохраняются.If the statement is aborted during execution, changes that have already occurred will remain.

Параметры статистики работают, только если администратор включил автоматическую статистику. Для включения или отключения автоматической статистики служит переключатель 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.

Режим блокировкиLocking Behavior

Принимает совмещаемую блокировку для объекта DATABASE.Takes a shared lock on the DATABASE object. Изменить базу данных, в которой другой пользователь в настоящее время производит операции чтения или записи, невозможно.You cannot alter a database that is in use by another user for reading or writing. Это относится и к сеансам, в рамках которых была выполнена инструкция USE для базы данных.This includes sessions that have issued a USE statement on the database.

ПроизводительностьPerformance

Для сжатия базы данных может требоваться много времени и системных ресурсов в зависимости от фактического размера данных в ней и степени фрагментации на диске.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. Например, сжатие базы данных может длиться несколько часов.For example, shrinking a database could take several hours or more.

Определение хода выполнения шифрованияDetermining Encryption Progress

Чтобы определить ход выполнения прозрачного шифрования данных в базе данных в процентах, используйте следующий запрос: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';

Подробный пример, демонстрирующий все этапы реализации прозрачного шифрования данных, см. в статье Прозрачное шифрование данных (TDE).For a comprehensive example demonstrating all the steps in implementing TDE, see Transparent Data Encryption (TDE).

Примеры: Параллельное хранилище данныхParallel Data WarehouseExamples: Параллельное хранилище данныхParallel Data Warehouse

A.A. Изменение параметра AUTOGROWAltering the AUTOGROW setting

Присвойте параметру AUTOGROW значение ON для базы данных CustomerSales.Set AUTOGROW to ON for database CustomerSales.

ALTER DATABASE CustomerSales
    SET ( AUTOGROW = ON );

Б.B. Изменение максимального пространства для хранения реплицированных таблицAltering the maximum storage for replicated tables

В приведенном ниже примере для базы данных CustomerSales задается максимальный размер хранилища для реплицированных таблиц, равный 1 ГБ.The following example sets the replicated table storage limit to 1 GB for the database CustomerSales. Это размер хранилища для вычислительного узла.This is the storage limit per Compute node.

ALTER DATABASE CustomerSales
    SET ( REPLICATED_SIZE = 1 GB );

В.C. Изменение максимального пространства для хранения распределенных таблицAltering the maximum storage for distributed tables

В приведенном ниже примере для базы данных CustomerSales задается максимальный размер хранилища для распределенных таблиц, равный 1000 ГБ (один терабайт).The following example sets the distributed table storage limit to 1000 GB (one terabyte) for the database CustomerSales. Это совокупный размер хранилища для всех вычислительных узлов на устройстве, а не для отдельных вычислительных узлов.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. Изменение максимального пространства для хранения журнала транзакцийAltering the maximum storage for the transaction log

В приведенном ниже примере для базы данных CustomerSales на устройстве задается максимальный размер журнала транзакций SQL ServerSQL Server, равный 10 ГБ.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. Проверка текущих значений статистикиCheck for current statistics values

Следующий запрос возвращает текущие значения статистики для всех баз данных.The following query returns the current statistics values for all databases. Значение 1 означает, что функция включена, а 0 — что функция отключена.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. Включение автоматического создания и автоматического обновление статистики для базы данныхEnable auto-create and auto-update stats for a database

Используйте следующую инструкцию, чтобы включить автоматическое и асинхронное создание и обновление статистики для базы данных CustomerSales.Use the following statement to enable create and update statistics automatically and asynchronously for database, CustomerSales. В результате по мере необходимости создается и обновляется статистика по отдельным столбцам для формирования высококачественных планов запросов.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;

См. также:See Also