Condividi tramite


sys.availability_replicas (Transact-SQL)

Si applica a:SQL Server

Restituisce una riga per ognuna delle repliche di disponibilità appartenenti a tutti i gruppi di disponibilità AlwaysOn nel cluster di failover di Windows Server (WSFC).

Se l'istanza del server locale non riesce a connettersi al cluster di failover WSFC, ad esempio perché il cluster è inattivo o il quorum viene perso, sys.availability_replicas restituisce solo righe per le repliche di disponibilità locali. Queste righe contengono solo le colonne di dati memorizzate nella cache in locale nei metadati.

Nome colonna Tipo di dati Descrizione
replica_id uniqueidentifier ID univoco della replica.
group_id uniqueidentifier ID univoco del gruppo di disponibilità a cui appartiene la replica.
replica_metadata_id int ID dell'oggetto di metadati locale per le repliche di disponibilità nel motore di database.
replica_server_name nvarchar(256) Nome del server dell'istanza di SQL Server che ospita questa replica e, per un'istanza non predefinita, il nome dell'istanza.
owner_sid varbinary(85) ID di sicurezza (SID) registrato nell'istanza del server per il proprietario esterno della replica di disponibilità.

NULL per le repliche di disponibilità non locali.
endpoint_url nvarchar(256) Rappresentazione di stringa dell'endpoint del mirroring di database specificato dall'utente usato dalle connessioni tra repliche primarie e secondarie per la sincronizzazione dei dati. Per informazioni sulla sintassi degli URL degli endpoint, vedere Specificare l'URL dell'endpoint - Aggiunta o modifica della replica di disponibilità.

NULL = Impossibile comunicare con il cluster di failover WSFC.

Per modificare questo endpoint, usare l'opzione ENDPOINT_URLalter AVAILABILITY GROUP Transact-SQL istruzione.
availability_mode tinyint Modalità di disponibilità della replica. I valori possibili sono:

0 = Commit asincrono. La replica primaria può eseguire il commit delle transazioni senza attendere che la replica secondaria salvi il log su disco.

1 = Commit sincrono. La replica primaria attende che la replica secondaria salvi la transazione su disco prima di eseguirne il commit.

4 = Solo configurazione. La replica primaria invia i metadati di configurazione del gruppo di disponibilità alla replica in modo sincrono. I dati utente non vengono trasmessi alla replica.

Per altre informazioni, vedere Differenze tra le modalità di disponibilità per un gruppo di disponibilità Always On.

Si applica a SQL Server 2017 (14.x) CU 1 e versioni successive.
availability_mode_desc nvarchar(60) Descrizione di availability_mode, uno dei seguenti:

ASYNCHRONOUS_COMMIT
SYNCHRONOUS_COMMIT
CONFIGURATION_ONLY

Per modificare la modalità di disponibilità di una replica di disponibilità, usare l'opzione AVAILABILITY_MODE dell'istruzione ALTER AVAILABILITY GROUP Transact-SQL.

Non è possibile modificare la modalità di disponibilità di una replica in CONFIGURATION_ONLY. Non è possibile modificare una CONFIGURATION_ONLY replica in una replica secondaria o primaria.
failover_mode tinyint Modalità di failover della replica di disponibilità, una delle seguenti:

0 = Failover automatico. La replica è una destinazione potenziale per i failover automatici. Il failover automatico è supportato solo se la modalità di disponibilità è impostata su commit sincrono (availability_mode è 1) e la replica di disponibilità è attualmente sincronizzata.

1 = Failover manuale. Quando una replica secondaria è configurata per il failover manuale, l'amministratore del database deve avviare manualmente il failover. Il tipo di failover eseguito dipende dal fatto che la replica secondaria sia sincronizzata, come indicato di seguito:

Se la replica di disponibilità non sincronizza o sta ancora sincronizzando, può verificarsi solo il failover forzato (con possibile perdita di dati).

Se la modalità di disponibilità è impostata su commit sincrono (availability_mode è 1) e la replica di disponibilità è attualmente sincronizzata, il failover manuale senza perdita di dati può verificarsi.

Per visualizzare un rollup dell'integrità della sincronizzazione del database di ogni database di disponibilità in una replica di disponibilità, usare le synchronization_health colonne e synchronization_health_desc della sys.dm_hadr_availability_replica_states vista a gestione dinamica. Tramite il rollup vengono presi in considerazione lo stato di sincronizzazione di ogni database di disponibilità e la modalità di disponibilità della relativa replica di disponibilità.

Nota: Per visualizzare l'integrità della sincronizzazione di un determinato database di disponibilità, eseguire una query sulle synchronization_state colonne e synchronization_health della sys.dm_hadr_database_replica_states vista a gestione dinamica.
failover_mode_desc nvarchar(60) Descrizione di failover_mode, uno dei seguenti:

MANUAL
AUTOMATIC

Per modificare la modalità di failover, usare l'opzione FAILOVER_MODEalter AVAILABILITY GROUP Transact-SQL istruzione.
session_timeout int Periodo di timeout, espresso in secondi. Il periodo di timeout è il tempo massimo di attesa della replica per la ricezione di un messaggio da un'altra replica, prima di considerare che la connessione tra la replica primaria e quella secondaria non è riuscita. Il timeout della sessione rileva se i database secondari sono connessi alla replica primaria.

Quando viene rilevata una connessione non riuscita con una replica secondaria, la replica primaria considera la replica secondaria come NOT_SYNCHRONIZED. Se viene rilevata una connessione non riuscita con una replica primaria, una replica secondaria tenta di riconnettersi.

Nota: I timeout della sessione non causano failover automatici.

Per modificare questo valore, usare l'opzione SESSION_TIMEOUTalter AVAILABILITY GROUP Transact-SQL istruzione.
primary_role_allow_connections tinyint Specifica se la disponibilità consente tutte le connessioni o solo connessioni di lettura e scrittura. I valori possibili sono:

2 = Tutti (impostazione predefinita)
3 = Lettura scrittura
primary_role_allow_connections_desc nvarchar(60) Descrizione di primary_role_allow_connections, uno dei seguenti:

ALL
READ_WRITE
secondary_role_allow_connections tinyint Se una replica di disponibilità che esegue il ruolo secondario ( ovvero una replica secondaria) può accettare connessioni dai client, una delle seguenti:

0 = No. Non sono consentite connessioni ai database nella replica secondaria e i database non sono disponibili per l'accesso in lettura. Si tratta dell'impostazione predefinita.

1 = Sola lettura. Sono consentite solo le connessioni di sola lettura ai database nella replica secondaria. Tutti i database nella replica sono disponibili per l'accesso in lettura.

2 = Tutto. Sono consentite tutte le connessioni ai database nella replica secondaria per l'accesso in sola lettura.

Per ulteriori informazioni, vedere Spostare il carico di lavoro di sola lettura su una replica secondaria di un gruppo di disponibilità Always On.
secondary_role_allow_connections_desc nvarchar(60) Descrizione di secondary_role_allow_connections, uno dei seguenti:

NO
READ_ONLY
ALL
create_date datetime Data di creazione della replica.

NULL = Replica non in questa istanza del server.
modify_date datetime Data dell'ultima modifica apportata alla replica.

NULL = Replica non in questa istanza del server.
backup_priority int Rappresenta la priorità specificata dall'utente per l'esecuzione dei backup nella replica rispetto alle altre repliche nello stesso gruppo di disponibilità. Il valore è un numero intero compreso nell'intervallo 0-100.

Per maggiori informazioni, vedere Spostamento dei backup supportati alle repliche secondarie di un gruppo di disponibilità.
read_only_routing_url nvarchar(256) Endpoint di connettività (URL) della replica di disponibilità di sola lettura. Per altre informazioni, vedere Configurare il routing di sola lettura per un gruppo di disponibilità Always On.
seeding_mode tinyint Uno dei valori possibili:

0 = Automatico
1 = Manuale
seeding_mode_desc nvarchar(60) Descrive la modalità di seeding.

AUTOMATIC
MANUAL
read_write_routing_url nvarchar(256) Endpoint di connettività (URL) per quando la replica è primaria. Per altre informazioni, vedere Reindirizzamento della connessione in lettura/scrittura da replica secondaria a primaria - Gruppi di disponibilità AlwaysOn.

Si applica a: SQL Server 2019 (15.x) e versioni successive.

Autorizzazioni

È richiesta VIEW ANY DEFINITION l'autorizzazione per l'istanza del server.