Failover Groups - Create Or Update

Создает или обновляет группу отработки отказа.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/failoverGroups/{failoverGroupName}?api-version=2021-11-01

Параметры URI

Имя В Обязательно Тип Описание
failoverGroupName
path True

string

Имя группы отработки отказа.

resourceGroupName
path True

string

Имя группы ресурсов, к которой относится ресурс. Это значение можно получить от API-интерфейса диспетчера ресурсов Azure или портала.

serverName
path True

string

Имя сервера, содержащего группу отработки отказа.

subscriptionId
path True

string

Идентификатор подписки Azure.

api-version
query True

string

Версия API для использования в запросе.

Текст запроса

Имя Обязательно Тип Описание
properties.partnerServers True

PartnerInfo[]

Список сведений о сервере-партнере для группы отработки отказа.

properties.readWriteEndpoint True

FailoverGroupReadWriteEndpoint

Конечная точка для чтения и записи экземпляра группы отработки отказа.

properties.databases

string[]

Список баз данных в группе отработки отказа.

properties.readOnlyEndpoint

FailoverGroupReadOnlyEndpoint

Доступная только для чтения конечная точка экземпляра группы отработки отказа.

tags

object

Теги ресурсов.

Ответы

Имя Тип Описание
200 OK

FailoverGroup

Группа отработки отказа успешно обновлена.

201 Created

FailoverGroup

Группа отработки отказа успешно создана.

202 Accepted

Принято

Other Status Codes

Ответы об ошибках: ***

  • 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases — указанные идентификаторы баз данных не являются правильно созданными идентификаторами ресурсов базы данных. Пример правильного форматирования см. в разделе https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestInvalidPartner — заданное поле партнеров в тексте запроса на создание или обновление группы отработки отказа пустое или недопустимое. Укажите допустимое значение этого поля. Примеры правильно отформатированных запросов см. в разделе https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner — один или несколько предоставленных серверов-партнеров уже входят в группу отработки отказа. Убедитесь, что сервер-источник и все серверы-партнеры уникальны.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer — одна или несколько предоставленных баз данных не существуют на сервере-источнике группы отработки отказа. Убедитесь, что все базы данных существуют на сервере-источнике.

  • 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount — поддерживается только один сервер-партнер для группы отработки отказа. Измените запрос соответствующим образом. Примеры допустимых запросов см. в разделе https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint — для запросов на создание или обновление требуется поле readWriteEndpoint.

  • 400 FailoverGroupCreateOrUpdateRequestInvalid — текст запроса на создание или обновление группы отработки отказа пуст или недопустим.

  • 400 FailoverGroupUpdateOrDeleteRequestOnSecondary — изменение группы отработки отказа не допускается на сервере-получателе. Выполните запрос на сервере-источнике.

  • 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues — значение льготного периода для конечной точки чтения и записи должно быть неотрицательным.

  • 400 FailoverGroupCreateOrUpdateRequestLessThanMinimumGracePeriodValues — значение льготного периода для группы отработки отказа должно быть больше или равно минимальному льготному периоду в{0} минутах

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields — свойство failoverWithDataLossGracePeriodMinutes должно быть предоставлено, если для конечной точки чтения и записи выбрана политика отработки отказа Автоматически.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy — поле failoverPolicy для конечной точки чтения и записи требуется для запросов на создание или обновление.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy — значение льготного периода не должно быть указано, если для конечной точки чтения и записи выбрана политика отработки отказа Вручную. Удалите его из запроса.

  • 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified — текст запроса на создание или обновление группы отработки отказа не должен изменять свойство только для чтения "{0}".

  • 400 FailoverGroupFailoverRequestOnPrimary — запрос на отработку отказа должен быть инициирован на сервере-получателе группы отработки отказа.

  • 400 FailoverGroupPartnerServerFromDifferentSubscription — сервер-источник и серверы-партнеры группы отработки отказа относятся к разным подпискам. Перекрестная подписка для серверов группы отработки отказа не допускается.

  • 400 InvalidAddSecondaryPermission — пользователь не имеет достаточных разрешений для добавления вторичной базы данных на указанный сервер.

  • 400 InvalidSku — пользователь указал недопустимый номер SKU.

  • 400 ServerNotFound — запрошенный сервер не найден.

  • 400 FeatureDisabledOnSelectedEdition — пользователь попытался использовать функцию, которая отключена в текущем выпуске базы данных.

  • 400 TokenTooLong — предоставленный маркер слишком длинный.

  • 400 InvalidTargetSubregion — целевой сервер нечитаемой вторичной базы данных не находится в парном регионе Azure для аварийного восстановления.

  • 400 PartnerServerNotCompatible — пользователь пытается скопировать базу данных с сервера SAWA V1 на сервер Sterling или наоборот.

  • 400 IncorrectReplicationLinkState — операция ожидает, что база данных будет находиться в ожидаемом состоянии по каналу репликации.

  • 400 ResourcePoolNotFound — указанный эластичный пул не существует на указанном логическом сервере.

  • 400 AzureKeyVaultKeyDisabled — не удалось выполнить операцию на сервере, так как ключ Key Vault Azure отключен.

  • 400 AzureKeyVaultInvalidExpirationDate — не удалось выполнить операцию, так как недопустимая дата окончания срока действия ключа Key Vault Azure.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty — не удалось выполнить операцию, так как URI Key Vault Azure имеет значение NULL или пуст.

  • 400 AzureKeyVaultNoServerIdentity — удостоверение сервера настроено неправильно.

  • 400 AzureKeyVaultInvalidUri — недопустимый ответ от azure Key Vault. Используйте допустимый URI Key Vault Azure.

  • 400 AzureKeyVaultMissingPermissions — на сервере отсутствуют необходимые разрешения на Key Vault Azure.

  • 400 SecurityAzureKeyVaultInvalidKeyName — не удалось выполнить операцию из-за недопустимого имени ключа сервера.

  • 400 PlannedFailoverTimedOutForDatabase — пользователь вызвал плановая отработка отказа, истекло время ожидания, и конкретная база данных, как представляется, должна blame.

  • 400 PlannedFailoverTimedOut — пользователь вызвал плановая отработка отказа, и время ожидания истекло при попытке связаться со службой управления партнерами.

  • 400 AdalGenericError — не удалось завершить операцию, так как обнаружена ошибка Azure Active Directory.

  • 400 AdalServicePrincipalNotFound — не удалось выполнить операцию, так как обнаружена ошибка субъект-служба библиотеки Azure Active Directory не найдена.

  • 400 AzureKeyVaultMalformedVaultUri — указанный URI Key Vault является недопустимым.

  • 400 CannotUseReservedDatabaseName — не удается использовать зарезервированное имя базы данных в этой операции.

  • 400 InvalidFailoverGroupRegion — серверы, указанные в группе отработки отказа, должны находиться в разных регионах для обеспечения изоляции.

  • 400 FailoverGroupDoesNotExist — группа отработки отказа не существует на сервере.

  • 400 FailoverGroupNotSecondary — отработка отказа не может быть инициирована с сервера-источника в группе отработки отказа.

  • 400 InvalidServerName — указано недопустимое имя сервера.

  • 400 DatabaseInFailoverGroupNotPrimary — ссылка GeoDR для базы данных уже существует, но ее роль не является "Первичной" или не является ссылкой непрерывного копирования.

  • 400 SecurityAdalPrincipalCertExpiredError — не удалось завершить операцию, так как истек срок действия сертификата субъекта Key Vault Azure.

  • 400 FailToCreateFailoverGroupDueToTableAuditing — не удается создать группу отработки отказа для сервера с включенным аудитом таблиц.

  • 400 InvalidIdentifier — идентификатор содержит значение NULL или недопустимый символ Юникода.

  • 400 UnableToAddDbWithTableAuditingToFailoverGroup — база данных с включенным аудитом таблиц будет недоступна через конечную точку группы отработки отказа.

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel — указанный URI Key Vault является недопустимым.

  • 400 KeyMaterialNotFoundOnRemoteServer — удаленный сервер не имеет доступа к материалу ключа, используемому в качестве предохранителя TDE.

  • 400 LimitOfFailoverGroupsPerServerExceeded — создание новой группы отработки отказа превысит допустимое количество групп отработки отказа на сервер.

  • 400 SameKeyUriNotFoundOnRemoteServer — сервер-получатель не содержит материал ключа из того же хранилища ключей, что и предохранитель шифрования сервера-источника с включенной автоматической сменой ключей.

  • 400 AzureKeyVaultRsaKeyNotSupported — предоставленное хранилище ключей использует неподдерживаемый размер или тип ключа RSA. Поддерживаемый размер ключа RSA — 2048 или 3072, а тип ключа — RSA или RSA-HSM.

  • 400 SameKeyMaterialNotFoundOnRemoteServer — сервер-получатель не имеет материала ключа предохранителя шифрования основного сервера.

  • 400 GeoReplicationDatabaseNotSecondary — операция ожидает, что база данных будет целевым объектом репликации.

  • 400 GeoReplicaLimitReached — достигнут предел репликации на реплика.

  • 400 FailoverGroupWithVirtualNetworkRulesNotSupported — группы отработки отказа, настроенные с помощью политики автоматической отработки отказа, в настоящее время не поддерживаются на серверах, настроенных с помощью правил брандмауэра виртуальной сети. Настройте группу отработки отказа с помощью политики отработки отказа вручную.

  • 400 UnableToResolveRemoteServer — не удалось разрешить имя удаленного сервера-партнера из-за недопустимого имени сервера или проблем с подключением к DNS.

  • 400 RemoteDatabaseCopyPermission — пользователь не имеет достаточных разрешений на создание копии базы данных на указанном сервере.

  • 400 SecurityAzureKeyVaultGeoChainError — создание вторичной базы данных (процесс, известный как цепочка) не поддерживается при включении прозрачного шифрования данных с помощью Azure Key Vault (BYOK).

  • 400 FailoverGroupCreateOrUpdatePartiallySucceeded — не удалось добавить или удалить некоторые базы данных.

  • 404 OperationIdNotFound — операция с идентификатором не существует.

  • 404 ResourceNotFound — запрошенный ресурс не найден.

  • 404 OperationIdNotFound — операция с идентификатором не существует.

  • 404 ServerNotInSubscriptionResourceGroup — указанный сервер не существует в указанной группе ресурсов и подписке.

  • 404 ServerNotInSubscription — указанный сервер не существует в указанной подписке.

  • 404 SourceDatabaseNotFound — база данных-источник не существует.

  • 405 UnsupportedReplicationOperation — для базы данных была инициирована неподдерживаемая операция репликации.

  • 409 OperationCancelled — операция отменена пользователем.

  • 409 OperationInterrupted — не удалось завершить операцию с ресурсом, так как она была прервана другой операцией с тем же ресурсом.

  • 409 ConflictingServerOperation — в настоящее время выполняется операция для сервера.

  • 409 SubscriptionDisabled — подписка отключена.

  • 409 ConflictingSystemOperationInProgress — в базе данных выполняется операция обслуживания системы, и для дальнейших операций необходимо подождать, пока она не будет завершена.

  • 409 GeoReplicationCannotBecomePrimaryDuringUndo — пользователь попытался выполнить отработку отказа или принудительное завершение геосвязи, пока дополнительный объект находится в состоянии, когда он может быть физически несоотданным и поэтому не может войти в основную роль.

  • 409 ServerKeyNameAlreadyExists — ключ сервера уже существует на сервере.

  • 409 ServerKeyUriAlreadyExists — URI ключа сервера уже существует на сервере.

  • 409 ServerKeyDoesNotExists. Ключ сервера не существует.

  • 409 UpdateSloInProgress — пользователь пытался запустить несовместимую операцию во время обновления SLO.

  • 409 AzureKeyVaultKeyNameNotFound — не удалось выполнить операцию, так как имя ключа Key Vault Azure не существует.

  • 409 AzureKeyVaultKeyInUse — ключ в настоящее время используется сервером.

  • 409 FailoverGroupAlreadyExists — группа отработки отказа уже существует на данном сервере. Используйте другое имя группы отработки отказа.

  • 409 FailoverGroupBusy — группа отработки отказа занята другой операцией.

  • 409 DatabaseBelongsToOtherFailoverGroup — база данных принадлежит к другой группе отработки отказа и не может считаться частью этой группы.

  • 409 DatabaseBeingAddedToFailoverGroup — база данных в настоящее время добавляется в группу отработки отказа. Клиент должен дождаться завершения этой операции, чтобы удалить проблему.

  • 409 DatabaseBeingRemovedFromFailoverGroup — база данных в настоящее время удаляется из группы отработки отказа. Клиенту необходимо дождаться завершения этой операции для добавления проблемы.

  • 409 FailoverGroupDnsRecordInUse — для запрошенной конечной точки существует повторяющаяся запись DNS.

  • 409 InvalidFailoverGroupName — указано недопустимое имя группы отработки отказа.

  • 409 InvalidOperationForDatabaseNotInReplicationRelationship — операция заполнения репликации была выполнена в базе данных, которая уже находится в связи репликации.

  • 409 InvalidDatabaseStateForOperation — операция не разрешена для базы данных в текущем состоянии репликации.

  • 409 DuplicateGeoDrRelation — базы данных уже находятся в связи репликации. Это повторяющийся запрос.

  • 409 RemoteDatabaseExists — имя целевой базы данных уже существует на целевом сервере.

  • 409 FailoverGroupUnableToPerformGroupOperationOnDatabases — список баз данных для добавления и удаления из группы отработки отказа содержит ошибки, препятствующие завершению операции.

  • 429 SubscriptionTooManyCreateUpdateRequests — запросы, превышающие максимальное количество запросов, которые могут обрабатываться доступными ресурсами.

  • 429 SubscriptionTooManyRequests — запросы, превышающие максимальное количество запросов, которые могут быть обработаны доступными ресурсами.

  • 429 SubscriptionTooManyCreateUpdateRequests — запросы, превышающие максимальное количество запросов, которые могут обрабатываться доступными ресурсами.

  • 429 SubscriptionTooManyRequests — запросы, превышающие максимальное количество запросов, которые могут быть обработаны доступными ресурсами.

  • 500 OperationTimedOut — истекло время ожидания операции и автоматически выполняется откат. Повторите операцию.

  • 503 TooManyRequests — запросы, превышающие максимальное количество запросов, которые могут быть обработаны доступными ресурсами.

  • 503 TooManyRequests — запросы, превышающие максимальное количество запросов, которые могут быть обработаны доступными ресурсами.

  • 503 AzureKeyVaultConnectionFailed — не удалось выполнить операцию на сервере, так как попытки подключения к Azure Key Vault завершились сбоем.

  • 503 AzureKeyVaultGenericConnectionError — не удалось выполнить операцию, так как при попытке получить сведения о Key Vault произошла ошибка .

  • 503 DatabaseUnavailable — операция завершилась сбоем, так как база данных недоступна.

  • 504 RequestTimeout — превышено допустимое время ожидания запроса на обслуживание.

Примеры

Create failover group

Образец запроса

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-3?api-version=2021-11-01

{
  "properties": {
    "readWriteEndpoint": {
      "failoverPolicy": "Automatic",
      "failoverWithDataLossGracePeriodMinutes": 480
    },
    "readOnlyEndpoint": {
      "failoverPolicy": "Disabled"
    },
    "partnerServers": [
      {
        "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server"
      }
    ],
    "databases": [
      "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
      "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2"
    ]
  }
}

Пример ответа

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-3",
  "name": "failover-group-test-3",
  "type": "Microsoft.Sql/servers/failoverGroups",
  "location": "Japan East",
  "properties": {
    "readWriteEndpoint": {
      "failoverPolicy": "Automatic",
      "failoverWithDataLossGracePeriodMinutes": 480
    },
    "readOnlyEndpoint": {
      "failoverPolicy": "Disabled"
    },
    "replicationRole": "Primary",
    "replicationState": "CATCH_UP",
    "partnerServers": [
      {
        "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server",
        "location": "Japan West",
        "replicationRole": "Secondary"
      }
    ],
    "databases": [
      "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
      "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2"
    ]
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/failoverGroups/failover-group-test-3",
  "name": "failover-group-test-3",
  "type": "Microsoft.Sql/servers/failoverGroups",
  "location": "Japan East",
  "properties": {
    "readWriteEndpoint": {
      "failoverPolicy": "Automatic",
      "failoverWithDataLossGracePeriodMinutes": 480
    },
    "readOnlyEndpoint": {
      "failoverPolicy": "Disabled"
    },
    "replicationRole": "Primary",
    "replicationState": "CATCH_UP",
    "partnerServers": [
      {
        "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server",
        "location": "Japan West",
        "replicationRole": "Secondary"
      }
    ],
    "databases": [
      "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
      "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2"
    ]
  }
}

Определения

Имя Описание
FailoverGroup

Группа отработки отказа.

FailoverGroupReadOnlyEndpoint

Доступная только для чтения конечная точка экземпляра группы отработки отказа.

FailoverGroupReadWriteEndpoint

Конечная точка для чтения и записи экземпляра группы отработки отказа.

FailoverGroupReplicationRole

Роль локальной репликации экземпляра группы отработки отказа.

PartnerInfo

Сведения о сервере-партнере для группы отработки отказа.

ReadOnlyEndpointFailoverPolicy

Политика отработки отказа конечной точки только для чтения для группы отработки отказа.

ReadWriteEndpointFailoverPolicy

Политика отработки отказа конечной точки чтения и записи для группы отработки отказа. Если параметр failoverPolicy имеет значение Автоматически, требуется отработка отказаWithDataLossGracePeriodMinutes.

FailoverGroup

Группа отработки отказа.

Имя Тип Описание
id

string

Идентификатор ресурса.

location

string

Расположение ресурса.

name

string

Имя ресурса.

properties.databases

string[]

Список баз данных в группе отработки отказа.

properties.partnerServers

PartnerInfo[]

Список сведений о сервере-партнере для группы отработки отказа.

properties.readOnlyEndpoint

FailoverGroupReadOnlyEndpoint

Доступная только для чтения конечная точка экземпляра группы отработки отказа.

properties.readWriteEndpoint

FailoverGroupReadWriteEndpoint

Конечная точка для чтения и записи экземпляра группы отработки отказа.

properties.replicationRole

FailoverGroupReplicationRole

Роль локальной репликации экземпляра группы отработки отказа.

properties.replicationState

string

Состояние репликации экземпляра группы отработки отказа.

tags

object

Теги ресурсов.

type

string

Тип ресурса.

FailoverGroupReadOnlyEndpoint

Доступная только для чтения конечная точка экземпляра группы отработки отказа.

Имя Тип Описание
failoverPolicy

ReadOnlyEndpointFailoverPolicy

Политика отработки отказа конечной точки только для чтения для группы отработки отказа.

FailoverGroupReadWriteEndpoint

Конечная точка для чтения и записи экземпляра группы отработки отказа.

Имя Тип Описание
failoverPolicy

ReadWriteEndpointFailoverPolicy

Политика отработки отказа конечной точки чтения и записи для группы отработки отказа. Если параметр failoverPolicy имеет значение Автоматически, требуется отработка отказаWithDataLossGracePeriodMinutes.

failoverWithDataLossGracePeriodMinutes

integer

Для конечной точки чтения и записи выполняется льготный период перед отработкой отказа с потерей данных. Если параметр failoverPolicy имеет значение Автоматически, требуется отработка отказаWithDataLossGracePeriodMinutes.

FailoverGroupReplicationRole

Роль локальной репликации экземпляра группы отработки отказа.

Имя Тип Описание
Primary

string

Secondary

string

PartnerInfo

Сведения о сервере-партнере для группы отработки отказа.

Имя Тип Описание
id

string

Идентификатор ресурса сервера-партнера.

location

string

Географическое расположение сервера-партнера.

replicationRole

FailoverGroupReplicationRole

Роль репликации сервера-партнера.

ReadOnlyEndpointFailoverPolicy

Политика отработки отказа конечной точки только для чтения для группы отработки отказа.

Имя Тип Описание
Disabled

string

Enabled

string

ReadWriteEndpointFailoverPolicy

Политика отработки отказа конечной точки чтения и записи для группы отработки отказа. Если параметр failoverPolicy имеет значение Автоматически, требуется отработка отказаWithDataLossGracePeriodMinutes.

Имя Тип Описание
Automatic

string

Manual

string