Failover Groups - Create Or Update

Crea o aggiorna un gruppo di failover.

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

Parametri dell'URI

Name In Required Type Description
failoverGroupName
path True
  • string

Nome del gruppo di failover.

resourceGroupName
path True
  • string

Nome del gruppo di risorse contenente la risorsa. È possibile ottenere questo valore dall'API di Gestione risorse di Azure o dal portale.

serverName
path True
  • string

Nome del server contenente il gruppo di failover.

subscriptionId
path True
  • string

ID sottoscrizione che identifica una sottoscrizione di Azure.

api-version
query True
  • string

Versione dell'API da usare per la richiesta.

Corpo della richiesta

Name Required Type Description
properties.partnerServers True

Elenco delle informazioni sul server partner per il gruppo di failover.

properties.readWriteEndpoint True

Endpoint di lettura-scrittura dell'istanza del gruppo di failover.

properties.databases
  • string[]

Elenco di database nel gruppo di failover.

properties.readOnlyEndpoint

Endpoint di sola lettura dell'istanza del gruppo di failover.

tags
  • object

Tag di risorse.

Risposte

Name Type Description
200 OK

È stato aggiornato correttamente il gruppo di failover.

201 Created

Creazione del gruppo di failover completata.

202 Accepted

Accettato

Other Status Codes

Risposte agli errori: **

  • 400 FailoverGroupCreateOrUpdateRequestInvalidDatabases: gli ID delle risorse di database forniti non vengono costruiti correttamente. Per l'esempio di formattazione corretta, vedere https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestInvalidPartner - Il campo partner specificato in corpo della richiesta del gruppo di failover di creazione o aggiornamento è vuoto o non valido. Specificare un valore valido di questo campo. Per esempi di richieste formattate correttamente, vedere https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestDuplicatePartner : uno o più dei server partner forniti fanno già parte del gruppo di failover. Assicurarsi che il server primario e tutti i server partner specificati siano univoci.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidDatabaseServer - Uno o più dei database forniti non esistono nel server primario del gruppo di failover. Assicurarsi che tutti i database esistano nel server primario.

  • 400 FailoverGroupCreateOrUpdateRequestUnsupportedPartnerCount: è supportato un solo server partner per il gruppo di failover. Modificare di conseguenza la richiesta. Per esempi di richieste valide, vedere https://docs.microsoft.com/en-us/rest/api/sql/failovergroups/createorupdate

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpoint - Il campo readWriteEndpoint è necessario per creare o aggiornare le richieste.

  • 400 FailoverGroupCreateOrUpdateRequestInvalid : il corpo della richiesta del gruppo di failover di creazione o aggiornamento è vuoto o non valido.

  • 400 FailoverGroupUpdateOrDeleteRequestOnSecondary - Le modifiche al gruppo di failover non sono consentite in un server secondario. Eseguire la richiesta nel server primario.

  • 400 FailoverGroupCreateOrUpdateRequestNegativeGracePeriodValues - Il valore del periodo di tolleranza per l'endpoint di lettura-scrittura deve essere non negativo.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFields: il failover della proprietàWithDataLossGracePeriodMinutes deve essere fornito quando i criteri di failover Vengono selezionati automaticamente per l'endpoint di lettura-scrittura.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteFailoverPolicy: il campo failoverPolicy per l'endpoint di lettura-scrittura è necessario per creare o aggiornare le richieste.

  • 400 FailoverGroupCreateOrUpdateRequestInvalidReadWriteEndpointFieldsForManualPolicy - Il valore del periodo di tolleranza non deve essere specificato quando il criterio di failover Manuale è selezionato per l'endpoint di lettura-scrittura. Rimuoverlo dalla richiesta.

  • 400 FailoverGroupCreateOrUpdateRequestReadOnlyPropertyModified: il corpo della richiesta del gruppo di failover di creazione o aggiornamento non deve modificare la proprietà di sola lettura '{0}'.

  • 400 FailoverGroupFailoverRequestOnPrimary: la richiesta di failover deve essere avviata nel server secondario del gruppo di failover.

  • 400 FailoverGroupPartnerServerFromDifferentSubscription - Server primario e i server partner del gruppo di failover provengono da sottoscrizioni diverse. La sottoscrizione incrociata per i server del gruppo di failover non è consentita.

  • 400 InvalidAddSecondaryPermission: l'utente non dispone di autorizzazioni sufficienti per aggiungere secondario nel server specificato.

  • 400 InvalidSku: l'utente ha specificato uno sku non valido.

  • 400 ServerNotFound : il server richiesto non è stato trovato.

  • 400 FeatureDisabledOnSelectedEdition - Utente ha tentato di usare una funzionalità disabilitata nell'edizione del database corrente.

  • 400 TokenTooLong: il token fornito è troppo lungo.

  • 400 InvalidTargetSubregion: il server di destinazione di un secondario non leggibile non è in un'area di Azure associata a ripristino di emergenza.

  • 400 PartnerServerNotCompatible : l'utente sta tentando di copiare un database da un server SAWA V1 a un server Sterling o viceversa.

  • 400 IncorrectReplicationLinkState: l'operazione prevede che il database sia in uno stato previsto nel collegamento di replica.

  • 400 ResourcePoolNotFound: il pool elastico specificato non esiste nel server logico specificato.

  • 400 AzureKeyVaultKeyDisabled: impossibile completare l'operazione nel server perché la chiave di Key Vault di Azure è disabilitata.

  • 400 AzureKeyVaultInvalidExpirationDate - Impossibile completare l'operazione perché la data di scadenza della chiave di Azure Key Vault non è valida.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty - Impossibile completare l'operazione perché l'URI di Azure Key Vault è null o vuoto.

  • 400 AzureKeyVaultNoServerIdentity : l'identità del server non è configurata correttamente.

  • 400 AzureKeyVaultInvalidUri - Risposta non valida da Azure Key Vault. Usare un URI di Azure Key Vault valido.

  • 400 AzureKeyVaultMissingPermissions: il server manca delle autorizzazioni necessarie per l'Key Vault di Azure.

  • 400 SecurityAzureKeyVaultInvalidKeyName- Impossibile completare l'operazione a causa di un nome chiave server non valido.

  • 400 PlannedFailoverTimedOutForDatabase - L'utente ha richiamato il failover pianificato, ha chiamato il timeout e un database specifico sembra essere responsabile.

  • 400 PlannedFailoverTimedOut : l'utente ha richiamato il failover pianificato e ha provato a contattare il servizio di gestione dei partner.

  • 400 AdalGenericError: impossibile completare l'operazione perché è stato rilevato un errore di Azure Active Directory.

  • 400 AdalServicePrincipalNotFound- Impossibile completare l'operazione perché è stato rilevato un errore Azure Active Directory entità servizio libreria.

  • 400 AzureKeyVaultMalformedVaultUri: l'uri Key Vault fornito non è valido.

  • 400 CannotUseReservedDatabaseName - Impossibile usare il nome del database riservato in questa operazione.

  • 400 InvalidFailoverGroupRegion: i server specificati in un gruppo di failover devono risiedere in aree diverse per fornire l'isolamento.

  • 400 FailoverGroupDoesNotExist - Il gruppo di failover non esiste in un server.

  • 400 FailoverGroupNotSecondary: impossibile avviare il failover dal server primario in un gruppo di failover.

  • 400 InvalidServerName - Nome server non valido specificato.

  • 400 DatabaseInFailoverGroupNotPrimary - Collegamento GeoDR per il database già esistente, ma il ruolo non è "Primario" o non è un collegamento di copia continua.

  • 400 SecurityAdalPrincipalCertExpiredError - Impossibile completare l'operazione perché il certificato dell'entità di azure Key Vault è scaduto.

  • 400 UnableToCreateFailoverGroupDueToTableAuditing - Impossibile creare un gruppo di failover per il server con controllo tabella attivato.

  • 400 InvalidIdentifier: l'identificatore contiene NULL o un carattere unicode non valido.

  • 400 UnableToAddDbWithTableAuditingToFailoverGroup - Il database con controllo tabella abilitato non sarà accessibile tramite l'endpoint del gruppo di failover.

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel - L'URI fornito Key Vault non è valido.

  • 400 KeyMaterialNotFoundOnRemoteServer - Il server remoto non ha accesso al materiale chiave usato come protezione TDE.

  • 400 LimitOfFailoverGroupsPerServerExceeded - La creazione di un nuovo gruppo di failover supererà il numero consentito di gruppi di failover per server.

  • 400 AzureKeyVaultMismatchError - Area di Key Vault imprevista trovata nella risposta http.

  • 400 AzureKeyVaultRsaKeyNotSupported: l'insieme di credenziali delle chiavi fornito usa dimensioni chiave RSA o tipo di chiave non supportato. Le dimensioni della chiave RSA supportate sono 2048 o 3072 e il tipo di chiave è RSA o RSA-HSM.

  • 400 GeoReplicationDatabaseNotSecondary: l'operazione prevede che il database sia una destinazione di replica.

  • 400 GeoReplicaLimitReached: è stato raggiunto il limite di replica per replica.

  • 400 FailoverGroupWithVirtualNetworkRulesNotSupported: i gruppi di failover configurati con criteri di failover automatico non sono attualmente supportati nei server configurati con regole del firewall di rete virtuale. Configurare il gruppo di failover con criteri di failover manuali.

  • 400 UnableToResolveRemoteServer- Impossibile risolvere il nome del server partner remoto a causa di problemi di connettività DNS o nome server non validi.

  • 400 RemoteDatabaseCopyPermission: l'utente non dispone di autorizzazioni sufficienti per creare una copia del database nel server specificato.

  • 400 SecurityAzureKeyVaultGeoChainError: la creazione di un processo secondario (un processo noto come concatenamento) non è supportata quando si abilita Transparent Data Encryption con Azure Key Vault (BYOK).

  • 400 FailoverGroupCreateOrUpdatePartiallySucceeded- Impossibile aggiungere o rimuovere alcuni database.

  • 404 OperationIdNotFound- L'operazione con ID non esiste.

  • 404 ResourceNotFound: la risorsa richiesta non è stata trovata.

  • 404 OperationIdNotFound- L'operazione con ID non esiste.

  • 404 ServerNotInSubscriptionResourceGroup - Il server specificato non esiste nel gruppo di risorse e nella sottoscrizione specificati.

  • 404 ServerNotInSubscription : il server specificato non esiste nella sottoscrizione specificata.

  • 404 SourceDatabaseNotFound: il database di origine non esiste.

  • 405 UnsupportedReplicationOperation: un'operazione di replica non supportata è stata avviata nel database.

  • 409 OperationCancelled - L'operazione è stata annullata dall'utente.

  • 409 Operazione interrotta- Impossibile completare l'operazione sulla risorsa perché è stata interrotta da un'altra operazione sulla stessa risorsa.

  • 409 ConflictingServerOperation- Un'operazione è attualmente in corso per il server.

  • 409 SubscriptionDisabled : la sottoscrizione è disabilitata.

  • 409 ConflictingSystemOperationInProgress - È in corso un'operazione di manutenzione del sistema nel database e altre operazioni devono attendere il completamento.

  • 409 GeoReplicationCannotBecomePrimaryDuringUndo - L'utente ha tentato di eseguire il failover o di terminare un collegamento geografico mentre il database secondario è in uno stato in cui potrebbe non essere fisicamente coerente e quindi non può immettere il ruolo primario.

  • 409 ServerKeyNameAlreadyExists - La chiave del server esiste già nel server.

  • 409 ServerKeyUriAlreadyExists - L'URI della chiave del server esiste già nel server.

  • 409 ServerKeyDoesNotExists - La chiave server non esiste.

  • 409 UpdateSloInProgress - L'utente ha tentato di avviare un'operazione incompatibile mentre era in corso un aggiornamento SLO.

  • 409 AzureKeyVaultKeyNameNotFound- Impossibile completare l'operazione perché il nome della chiave di Azure Key Vault non esiste.

  • 409 AzureKeyVaultKeyInUse: la chiave è attualmente usata dal server.

  • 409 FailoverGroupAlreadyExists - Il gruppo di failover esiste già in un determinato server. Usare un nome diverso per il gruppo di failover.

  • 409 FailoverGroupBusy - Il gruppo di failover è occupato con un'altra operazione.

  • 409 DatabaseBelongsToOtherFailoverGroup - Il database appartiene ad altri gruppi di failover e non può essere considerato parte di questo gruppo.

  • 409 DatabaseBeingAddedToFailoverGroup: il database è attualmente in fase di aggiunta al gruppo di failover. Il cliente deve attendere il completamento dell'operazione per rimuovere il problema.

  • 409 DatabaseBeingRemovedFromFailoverGroup: il database è attualmente in corso di rimozione dal gruppo di failover, il cliente deve attendere il completamento dell'operazione per l'aggiunta del problema.

  • 409 FailoverGroupDnsRecordInUse: esiste un record DNS duplicato per l'endpoint richiesto.

  • 409 InvalidFailoverGroupName - È stato specificato il nome del gruppo di failover non valido.

  • 409 InvalidOperationForDatabaseNotInReplicationRelationship- È stata eseguita un'operazione di seeding della replica in un database già presente in una relazione di replica.

  • 409 InvalidDatabaseStateForOperation: l'operazione non è consentita nel database nello stato di replica corrente.

  • 409 DuplicateGeoDrRelation: i database si trovano già in una relazione di replica. Si tratta di una richiesta duplicata.

  • 409 RemoteDatabaseExists : il nome del database di destinazione esiste già nel server di destinazione.

  • 409 FailoverGroupUnableToPerformGroupOperationOnDatabases - L'elenco di database da aggiungere/rimuovere da/verso il gruppo di failover contiene errori che impediscono il completamento dell'operazione.

  • 429 SubscriptionTooManyCreateUpdateRequests: richieste oltre il numero massimo di richieste che possono essere elaborate dalle risorse disponibili.

  • 429 SubscriptionTooManyRequests - Richieste oltre il numero massimo di richieste che possono essere elaborate dalle risorse disponibili.

  • 500 OperationTimedOut: timeout dell'operazione e rollback automatico. Ripetere l'operazione.

  • 503 TooManyRequests: richieste oltre il numero massimo di richieste che possono essere elaborate dalle risorse disponibili.

  • 503 AzureKeyVaultConnectionFailed- Impossibile completare l'operazione nel server perché i tentativi di connessione ad Azure Key Vault non sono riusciti

  • 503 AzureKeyVaultGenericConnectionError- Impossibile completare l'operazione perché si è verificato un errore durante il tentativo di recuperare Key Vault informazioni .

  • 503 DatabaseUnavailable: operazione non riuscita perché il database non è disponibile.

  • 504 RequestTimeout : la richiesta di servizio ha superato il timeout consentito.

Esempio

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

Definizioni

FailoverGroup

Un gruppo di failover.

FailoverGroupReadOnlyEndpoint

Endpoint di sola lettura dell'istanza del gruppo di failover.

FailoverGroupReadWriteEndpoint

Endpoint di lettura-scrittura dell'istanza del gruppo di failover.

FailoverGroupReplicationRole

Ruolo di replica locale dell'istanza del gruppo di failover.

PartnerInfo

Informazioni sul server partner per il gruppo di failover.

ReadOnlyEndpointFailoverPolicy

Criteri di failover dell'endpoint di sola lettura per il gruppo di failover.

ReadWriteEndpointFailoverPolicy

Criteri di failover dell'endpoint di lettura-scrittura per il gruppo di failover. Se failoverPolicy è Automatico, è necessario il failoverWithDataLossGracePeriodMinutes.

FailoverGroup

Un gruppo di failover.

Name Type Description
id
  • string

ID risorsa.

location
  • string

Percorso della risorsa.

name
  • string

Nome risorsa.

properties.databases
  • string[]

Elenco di database nel gruppo di failover.

properties.partnerServers

Elenco delle informazioni sul server partner per il gruppo di failover.

properties.readOnlyEndpoint

Endpoint di sola lettura dell'istanza del gruppo di failover.

properties.readWriteEndpoint

Endpoint di lettura-scrittura dell'istanza del gruppo di failover.

properties.replicationRole

Ruolo di replica locale dell'istanza del gruppo di failover.

properties.replicationState
  • string

Stato di replica dell'istanza del gruppo di failover.

tags
  • object

Tag di risorse.

type
  • string

Tipo di risorsa.

FailoverGroupReadOnlyEndpoint

Endpoint di sola lettura dell'istanza del gruppo di failover.

Name Type Description
failoverPolicy

Criteri di failover dell'endpoint di sola lettura per il gruppo di failover.

FailoverGroupReadWriteEndpoint

Endpoint di lettura-scrittura dell'istanza del gruppo di failover.

Name Type Description
failoverPolicy

Criteri di failover dell'endpoint di lettura-scrittura per il gruppo di failover. Se failoverPolicy è Automatico, è necessario il failoverWithDataLossGracePeriodMinutes.

failoverWithDataLossGracePeriodMinutes
  • integer

Periodo di tolleranza prima del failover con perdita di dati viene tentato per l'endpoint di lettura-scrittura. Se failoverPolicy è Automatico, è necessario il failoverWithDataLossGracePeriodMinutes.

FailoverGroupReplicationRole

Ruolo di replica locale dell'istanza del gruppo di failover.

Name Type Description
Primary
  • string
Secondary
  • string

PartnerInfo

Informazioni sul server partner per il gruppo di failover.

Name Type Description
id
  • string

Identificatore di risorsa del server partner.

location
  • string

Posizione geografica del server partner.

replicationRole

Ruolo di replica del server partner.

ReadOnlyEndpointFailoverPolicy

Criteri di failover dell'endpoint di sola lettura per il gruppo di failover.

Name Type Description
Disabled
  • string
Enabled
  • string

ReadWriteEndpointFailoverPolicy

Criteri di failover dell'endpoint di lettura-scrittura per il gruppo di failover. Se failoverPolicy è Automatico, è necessario il failoverWithDataLossGracePeriodMinutes.

Name Type Description
Automatic
  • string
Manual
  • string