Failover Groups - Create Or Update

Tworzy lub aktualizuje grupę trybu failover.

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

Parametry identyfikatora URI

Name In Required Type Description
failoverGroupName
path True
  • string

Nazwa grupy trybu failover.

resourceGroupName
path True
  • string

Nazwa grupy zasobów zawierającej zasób. Tę wartość można uzyskać z interfejsu API Resource Manager platformy Azure lub portalu.

serverName
path True
  • string

Nazwa serwera zawierającego grupę trybu failover.

subscriptionId
path True
  • string

Identyfikator subskrypcji identyfikujący subskrypcję platformy Azure.

api-version
query True
  • string

Wersja interfejsu API do użycia dla żądania.

Treść żądania

Name Required Type Description
properties.partnerServers True

Lista informacji o serwerze partnerskim dla grupy trybu failover.

properties.readWriteEndpoint True

Punkt końcowy odczytu i zapisu wystąpienia grupy trybu failover.

properties.databases
  • string[]

Lista baz danych w grupie trybu failover.

properties.readOnlyEndpoint

Punkt końcowy grupy trybu failover tylko do odczytu.

tags
  • object

Tagi zasobów.

Odpowiedzi

Name Type Description
200 OK

Pomyślnie zaktualizowano grupę trybu failover.

201 Created

Pomyślnie utworzono grupę trybu failover.

202 Accepted

Zaakceptowano

Other Status Codes

Odpowiedzi na błędy: ***

  • 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases — podane identyfikatory baz danych nie są prawidłowo skonstruowane identyfikatory zasobów bazy danych. Przykład odpowiedniego formatowania można znaleźć w temacie https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestInvalidPartner — podane pole partnerów w treści żądania tworzenia lub aktualizowania grupy trybu failover jest puste lub nieprawidłowe. Podaj prawidłową wartość tego pola. Przykłady prawidłowo sformatowanych żądań można znaleźć w temacie https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner — co najmniej jeden z dostępnych serwerów partnerskich jest już częścią grupy trybu failover. Upewnij się, że serwer podstawowy i wszystkie te serwery partnerskie są unikatowe.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer — co najmniej jedna z podanych baz danych nie istnieje na serwerze podstawowym grupy trybu failover. Upewnij się, że wszystkie bazy danych istnieją na serwerze podstawowym.

  • 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount — obsługiwany jest tylko jeden serwer partnerski dla grupy trybu failover. Zmodyfikuj odpowiednie żądanie. Przykłady prawidłowych żądań można znaleźć w temacie https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint — pole readWriteEndpoint jest wymagane dla żądań tworzenia lub aktualizowania.

  • 400 FailoverGroupCreateOrUpdateRequestInvalid — treść żądania tworzenia lub aktualizowania grupy trybu failover jest pusta lub nieprawidłowa.

  • 400 FailoverGroupUpdateOrDeleteRequestOnSecondary — modyfikacje grupy trybu failover nie są dozwolone na serwerze pomocniczym. Wykonaj żądanie na serwerze podstawowym.

  • 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues — wartość okresu prolongaty dla punktu końcowego odczytu i zapisu musi być nieujemna.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields — właściwość failoverWithDataLossGracePeriodMinutes musi zostać podana, gdy dla punktu końcowego odczytu i zapisu wybrano zasady trybu failover Automatycznie.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy — pole failoverPolicy dla punktu końcowego odczytu i zapisu jest wymagane dla żądań tworzenia lub aktualizowania.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy — wartość okresu prolongaty nie powinna być podana, gdy dla punktu końcowego odczytu i zapisu wybrano zasady trybu failover. Usuń go z żądania.

  • 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified — treść żądania tworzenia lub aktualizowania grupy trybu failover nie powinna modyfikować właściwości tylko do odczytu "{0}".

  • 400 FailoverGroupFailoverRequestOnPrimary — żądanie trybu failover powinno zostać zainicjowane na pomocniczym serwerze grupy trybu failover.

  • 400 FailoverGroupPartnerServerFromDifferentSubscription — serwer podstawowy i serwery partnerskie grupy trybu failover pochodzą z różnych subskrypcji. Subskrypcja między serwerami grupy trybu failover jest niedozwolona.

  • 400 InvalidAddSecondaryPermission — użytkownik nie ma wystarczających uprawnień do dodawania pomocniczego na określonym serwerze.

  • 400 InvalidSku — użytkownik określił nieprawidłową jednostkę SKU.

  • 400 ServerNotFound — nie można odnaleźć żądanego serwera.

  • 400 FeatureDisabledOnSelectedEdition — użytkownik próbował użyć funkcji wyłączonej w bieżącej wersji bazy danych.

  • 400 TokenTooLong — podany token jest za długi.

  • 400 InvalidTargetSubregion — docelowy serwer pomocniczego, który nie jest czytelny, nie znajduje się w sparowanym regionie świadczenia usługi Azure.

  • 400 PartnerServerNotCompatible — użytkownik próbuje skopiować bazę danych z serwera SAWA V1 na serwer Sterling lub na odwrót.

  • 400 IncorrectReplicationLinkState — operacja oczekuje, że baza danych będzie w oczekiwanym stanie w linku replikacji.

  • 400 ResourcePoolNotFound — określona elastyczna pula nie istnieje na określonym serwerze logicznym.

  • 400 AzureKeyVaultKeyDisabled — nie można ukończyć operacji na serwerze, ponieważ klucz usługi Azure Key Vault jest wyłączony.

  • 400 AzureKeyVaultInvalidExpirationDate — nie można ukończyć operacji, ponieważ data wygaśnięcia klucza usługi Azure Key Vault jest nieprawidłowa.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty — nie można ukończyć operacji, ponieważ identyfikator URI usługi Azure Key Vault ma wartość null lub jest pusty.

  • 400 AzureKeyVaultNoServerIdentity — tożsamość serwera nie jest poprawnie skonfigurowana.

  • 400 AzureKeyVaultInvalidUri — nieprawidłowa odpowiedź z usługi Azure Key Vault. Użyj prawidłowego identyfikatora URI usługi Azure Key Vault.

  • 400 AzureKeyVaultMissingPermissions — na serwerze brakuje wymaganych uprawnień w usłudze Azure Key Vault.

  • 400 SecurityAzureKeyVaultInvalidKeyName — nie można ukończyć operacji z powodu nieprawidłowej nazwy klucza serwera.

  • 400 PlannedFailoverTimedOutForDatabase — użytkownik wywołał planowany tryb failover, upłynął limit czasu, a konkretna baza danych wydaje się być winna.

  • 400 PlannedFailoverTimedOut — użytkownik wywołał planowany tryb failover i upłynął limit czasu podczas próby skontaktowania się z usługą zarządzania partnera.

  • 400 AdalGenericError — nie można ukończyć operacji, ponieważ wystąpił błąd Azure Active Directory.

  • 400 AdalServicePrincipalNotFound — nie można ukończyć operacji, ponieważ napotkano błąd jednostki usługi biblioteki Azure Active Directory.

  • 400 AzureKeyVaultMalformedVaultUri — podany identyfikator URI Key Vault jest nieprawidłowy.

  • 400 CannotUseReservedDatabaseName — nie można użyć nazwy zarezerwowanej bazy danych w tej operacji.

  • 400 InvalidFailoverGroupRegion — serwery określone w grupie trybu failover muszą znajdować się w różnych regionach, aby zapewnić izolację.

  • 400 FailoverGroupDoesNotExist — grupa trybu failover nie istnieje na serwerze.

  • 400 FailoverGroupNotSecondary — nie można zainicjować trybu failover z serwera podstawowego w grupie trybu failover.

  • 400 InvalidServerName — podano nieprawidłową nazwę serwera.

  • 400 DatabaseInFailoverGroupNotPrimary — link GeoDR dla bazy danych już istnieje, ale jego rola nie jest "Podstawowa" lub nie jest łączem ciągłego kopiowania.

  • 400 SecurityAdalPrincipalCertExpiredError — nie można ukończyć operacji, ponieważ certyfikat główny usługi Azure Key Vault wygasł.

  • 400 UnableToCreateFailoverGroupDueToTableAuditing — nie można utworzyć grupy trybu failover dla serwera z włączoną inspekcją tabel.

  • 400 InvalidIdentifier — identyfikator zawiera wartość NULL lub nieprawidłowy znak Unicode.

  • 400 UnableToAddDbWithTableAuditingToFailoverGroup — baza danych z włączoną inspekcją tabel nie będzie dostępna za pośrednictwem punktu końcowego grupy trybu failover.

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel — podany identyfikator URI Key Vault jest nieprawidłowy.

  • 400 KeyMaterialNotFoundOnRemoteServer — serwer zdalny nie ma dostępu do materiału klucza używanego jako funkcja ochrony TDE.

  • 400 LimitOfFailoverGroupsPerServerExceeded — utworzenie nowej grupy trybu failover spowoduje przekroczenie dozwolonej liczby grup trybu failover na serwer.

  • 400 AzureKeyVaultMismatchError — nieoczekiwany region Key Vault znaleziony w odpowiedzi HTTP.

  • 400 AzureKeyVaultRsaKeyNotSupported — podany magazyn kluczy używa nieobsługiwanego rozmiaru klucza RSA lub typu klucza. Obsługiwany rozmiar klucza RSA to 2048 lub 3072, a typ klucza to RSA lub RSA-HSM.

  • 400 GeoReplicationDatabaseNotSecondary — operacja oczekuje, że baza danych będzie obiektem docelowym replikacji.

  • 400 GeoReplicaLimitReached — osiągnięto limit replikacji na replikę.

  • 400 FailoverGroupWithVirtualNetworkRulesNotSupported — grupy trybu failover skonfigurowane z zasadami automatycznego trybu failover nie są obecnie obsługiwane na serwerach skonfigurowanych przy użyciu reguł zapory sieci wirtualnej. Skonfiguruj grupę trybu failover z ręcznymi zasadami trybu failover.

  • 400 UnableToResolveRemoteServer — nie można rozwiązać nazwy serwera zdalnego partnera z powodu nieprawidłowej nazwy serwera lub problemów z łącznością DNS.

  • 400 RemoteDatabaseCopyPermission — użytkownik nie ma wystarczających uprawnień do utworzenia kopii bazy danych na określonym serwerze.

  • 400 SecurityAzureKeyVaultGeoChainError — tworzenie pomocniczej funkcji pomocniczej (proces znany jako łańcuch) nie jest obsługiwane podczas włączania Transparent Data Encryption przy użyciu usługi Azure Key Vault (BYOK).

  • 400 FailoverGroupCreateOrUpdateParticceed — nie można dodać ani usunąć niektórych baz danych.

  • 404 OperationIdNotFound — operacja o identyfikatorze nie istnieje.

  • 404 ResourceNotFound — żądany zasób nie został znaleziony.

  • 404 OperationIdNotFound — operacja o identyfikatorze nie istnieje.

  • 404 ServerNotInSubscriptionResourceGroup — określony serwer nie istnieje w określonej grupie zasobów i subskrypcji.

  • 404 ServerNotInSubscription — określony serwer nie istnieje w określonej subskrypcji.

  • 404 SourceDatabaseNotFound — źródłowa baza danych nie istnieje.

  • 405 UnsupportedReplicationOperation — zainicjowano nieobsługiwaną operację replikacji w bazie danych.

  • 409 OperationCancelled — operacja została anulowana przez użytkownika.

  • 409 OperationInterrupted — nie można ukończyć operacji na zasobie, ponieważ została przerwana przez inną operację na tym samym zasobie.

  • 409 ConflictingServerOperation — operacja jest obecnie w toku dla serwera.

  • 409 SubscriptionDisabled — subskrypcja jest wyłączona.

  • 409 ConflictingSystemOperationInProgress — operacja konserwacji systemu jest w toku w bazie danych, a dalsze operacje muszą czekać, aż zostanie ukończone.

  • 409 GeoReplicationCannotBecomePrimaryDuringUndo — użytkownik próbował przejść w tryb failover lub wymusić przerwanie łącza geograficznego, gdy pomocnicze jest w stanie, w którym może nie być fizycznie spójne, a więc nie może wprowadzić roli podstawowej.

  • 409 ServerKeyNameAlreadyExists — klucz serwera już istnieje na serwerze.

  • 409 ServerKeyUriAlreadyExists — identyfikator URI klucza serwera już istnieje na serwerze.

  • 409 ServerKeyDoesNotExists — klucz serwera nie istnieje.

  • 409 UpdateSloInProgress — użytkownik próbował zainicjować niezgodną operację, gdy aktualizacja SLO była w toku.

  • 409 AzureKeyVaultKeyNameNotFound — nie można ukończyć operacji, ponieważ nazwa klucza Key Vault platformy Azure nie istnieje.

  • 409 AzureKeyVaultKeyInUse — klucz jest obecnie używany przez serwer.

  • 409 FailoverGroupAlreadyExists — grupa trybu failover już istnieje na danym serwerze. Użyj innej nazwy grupy trybu failover.

  • 409 FailoverGroupBusy — grupa trybu failover jest zajęta inną operacją.

  • 409 DatabaseBelongsToOtherFailoverGroup — baza danych należy do innej grupy trybu failover i nie może być częścią tej grupy.

  • 409 DatabaseBeingAddedToFailoverGroup — baza danych jest obecnie dodawana do grupy trybu failover, klient musi poczekać na zakończenie tej operacji, aby wydać problem.

  • 409 DatabaseBeingRemovedFromFailoverGroup — baza danych jest obecnie usuwana z grupy trybu failover, klient musi poczekać na zakończenie tej operacji, aby dodać problem.

  • 409 FailoverGroupDnsRecordInUse — istnieje zduplikowany rekord DNS dla żądanego punktu końcowego.

  • 409 InvalidFailoverGroupName — podano nieprawidłową nazwę grupy trybu failover.

  • 409 InvalidOperationForDatabaseNotInReplicationRelationRelationShip — operacja rozmieszczania replikacji została wykonana w bazie danych, która jest już w relacji replikacji.

  • 409 InvalidDatabaseStateForOperation — operacja nie jest dozwolona w bazie danych w bieżącym stanie replikacji.

  • 409 DuplicateGeoDrRelation — bazy danych są już w relacji replikacji. Jest to zduplikowane żądanie.

  • 409 RemoteDatabaseExists — nazwa docelowej bazy danych już istnieje na serwerze docelowym.

  • 409 FailoverGroupUnableToPerformGroupOperationOnDatabases — lista baz danych do dodania/usunięcia z grupy trybu failover zawiera błędy uniemożliwiające ukończenie operacji.

  • 429 SubscriptionTooManyCreateUpdateRequests — żądania wykraczające poza maksymalne żądania, które mogą być przetwarzane przez dostępne zasoby.

  • 429 SubscriptionTooManyRequests — żądania wykraczające poza maksymalne żądania, które mogą być przetwarzane przez dostępne zasoby.

  • 500 OperationTimedOut — upłynął limit czasu operacji i został automatycznie wycofany. Ponów próbę wykonania operacji.

  • 503 TooManyRequests — żądania wykraczające poza maksymalne żądania, które mogą być przetwarzane przez dostępne zasoby.

  • 503 AzureKeyVaultConnectionFailed — nie można ukończyć operacji na serwerze, ponieważ próby nawiązania połączenia z platformą Azure Key Vault zakończyły się niepowodzeniem

  • 503 AzureKeyVaultGenericConnectionError — nie można ukończyć operacji, ponieważ wystąpił błąd podczas próby pobrania Key Vault informacji .

  • 503 DatabaseUnavailable — operacja nie powiodła się, ponieważ baza danych jest niedostępna.

  • 504 RequestTimeout — żądanie usługi przekroczyło dozwolony limit czasu.

Przykłady

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

Definicje

FailoverGroup

Grupa trybu failover.

FailoverGroupReadOnlyEndpoint

Punkt końcowy grupy trybu failover tylko do odczytu.

FailoverGroupReadWriteEndpoint

Punkt końcowy odczytu i zapisu wystąpienia grupy trybu failover.

FailoverGroupReplicationRole

Rola replikacji lokalnej wystąpienia grupy trybu failover.

PartnerInfo

Informacje o serwerze partnerskim dla grupy trybu failover.

ReadOnlyEndpointFailoverPolicy

Zasady trybu failover punktu końcowego tylko do odczytu dla grupy trybu failover.

ReadWriteEndpointFailoverPolicy

Zasady trybu failover punktu końcowego odczytu i zapisu dla grupy trybu failover. Jeśli tryb failoverPolicy jest automatyczny, wymagany jest tryb failoverWithDataLossGracePeriodMinutes.

FailoverGroup

Grupa trybu failover.

Name Type Description
id
  • string

Identyfikator zasobu.

location
  • string

Lokalizacja zasobu.

name
  • string

Nazwa zasobu.

properties.databases
  • string[]

Lista baz danych w grupie trybu failover.

properties.partnerServers

Lista informacji o serwerze partnerskim dla grupy trybu failover.

properties.readOnlyEndpoint

Punkt końcowy grupy trybu failover tylko do odczytu.

properties.readWriteEndpoint

Punkt końcowy odczytu i zapisu wystąpienia grupy trybu failover.

properties.replicationRole

Rola replikacji lokalnej wystąpienia grupy trybu failover.

properties.replicationState
  • string

Stan replikacji wystąpienia grupy trybu failover.

tags
  • object

Tagi zasobów.

type
  • string

Typ zasobu.

FailoverGroupReadOnlyEndpoint

Punkt końcowy grupy trybu failover tylko do odczytu.

Name Type Description
failoverPolicy

Zasady trybu failover punktu końcowego tylko do odczytu dla grupy trybu failover.

FailoverGroupReadWriteEndpoint

Punkt końcowy odczytu i zapisu wystąpienia grupy trybu failover.

Name Type Description
failoverPolicy

Zasady trybu failover punktu końcowego odczytu i zapisu dla grupy trybu failover. Jeśli tryb failoverPolicy jest automatyczny, wymagany jest tryb failoverWithDataLossGracePeriodMinutes.

failoverWithDataLossGracePeriodMinutes
  • integer

Okres prolongaty przed przejściem w tryb failover z próbą utraty danych dla punktu końcowego odczytu i zapisu. Jeśli tryb failoverPolicy jest automatyczny, wymagany jest tryb failoverWithDataLossGracePeriodMinutes.

FailoverGroupReplicationRole

Rola replikacji lokalnej wystąpienia grupy trybu failover.

Name Type Description
Primary
  • string
Secondary
  • string

PartnerInfo

Informacje o serwerze partnerskim dla grupy trybu failover.

Name Type Description
id
  • string

Identyfikator zasobu serwera partnerskiego.

location
  • string

Lokalizacja geograficzna serwera partnerskiego.

replicationRole

Rola replikacji serwera partnerskiego.

ReadOnlyEndpointFailoverPolicy

Zasady trybu failover punktu końcowego tylko do odczytu dla grupy trybu failover.

Name Type Description
Disabled
  • string
Enabled
  • string

ReadWriteEndpointFailoverPolicy

Zasady trybu failover punktu końcowego odczytu i zapisu dla grupy trybu failover. Jeśli tryb failoverPolicy jest automatyczny, wymagany jest tryb failoverWithDataLossGracePeriodMinutes.

Name Type Description
Automatic
  • string
Manual
  • string