Failover Groups - Create Or Update

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

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

Параметры URI

Name In Required Type Description
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 для использования в запросе.

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

Name Required Type Description
properties.partnerServers True

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

properties.readWriteEndpoint True

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

properties.databases
  • string[]

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

properties.readOnlyEndpoint

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

tags
  • object

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

Ответы

Name Type Description
200 OK

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

201 Created

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

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 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 — не удалось завершить операцию на сервере, так как ключ Azure Key Vault отключен.

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

  • 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 — пользователь вызвал плановую отработку отказа, истекло время ожидания, и определенная база данных, как представляется, виновата.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • 400 AzureKeyVaultMismatchError — непредвиденный Key Vault регион, найденный в http-ответе.

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

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

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

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

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

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

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

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

  • 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 — не удалось выполнить операцию, так как имя ключа azure Key Vault не существует.

  • 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 — запросы за пределами максимального числа запросов, которые могут обрабатываться доступными ресурсами.

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

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

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

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

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

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

Примеры

Create failover group

Sample Request

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-02-01-preview

{
  "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"
    ]
  }
}

Sample Response

{
  "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 имеет значение Automatic, требуется отработка отказаWithDataLossGracePeriodMinutes.

FailoverGroup

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

Name Type Description
id
  • string

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

location
  • string

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

name
  • string

Имя ресурса.

properties.databases
  • string[]

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

properties.partnerServers

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

properties.readOnlyEndpoint

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

properties.readWriteEndpoint

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

properties.replicationRole

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

properties.replicationState
  • string

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

tags
  • object

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

type
  • string

Тип ресурса.

FailoverGroupReadOnlyEndpoint

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

Name Type Description
failoverPolicy

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

FailoverGroupReadWriteEndpoint

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

Name Type Description
failoverPolicy

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

failoverWithDataLossGracePeriodMinutes
  • integer

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

FailoverGroupReplicationRole

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

Name Type Description
Primary
  • string
Secondary
  • string

PartnerInfo

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

Name Type Description
id
  • string

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

location
  • string

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

replicationRole

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

ReadOnlyEndpointFailoverPolicy

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

Name Type Description
Disabled
  • string
Enabled
  • string

ReadWriteEndpointFailoverPolicy

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

Name Type Description
Automatic
  • string
Manual
  • string