sys.availability_replicas (Transact-SQL)

Restituisce una riga per ognuna delle repliche di disponibilità che appartiene a un gruppo di disponibilità AlwaysOn nel cluster di failover WSFC.

Se l'istanza del server locale non è in grado di comunicare con il cluster di failover WSFC, ad esempio perché il cluster non è attivo o perché è stato perso il quorum, vengono restituite solo le righe delle repliche di disponibilità locali. Tali righe conterranno solo le colonne di dati memorizzate nella cache dei metadati in locale.

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 la replica corrente 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(128)

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 Specifica dell'URL dell'endpoint quando si aggiunge o si modifica una replica di disponibilità (SQL Server).

NULL = Impossibile comunicare con il cluster di failover WSFC.

Per modificare questo endpoint, usare l'opzione ENDPOINT_URL dell'istruzione Transact-SQL ALTER AVAILABILITY GROUP.

availability_mode

tinyint

Modalità di disponibilità della replica. I valori possibili sono:

Valore

Descrizione

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.

Per ulteriori informazioni, vedere Modalità di disponibilità (gruppi di disponibilità AlwaysOn).

availability_mode_desc

nvarchar(60)

Descrizione di availability_mode. I valori possibili sono:

ASYNCHRONOUS_COMMIT

SYNCHRONOUS_COMMIT

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

failover_mode

tinyint

Modalità di failover della replica di disponibilità. I valori possibili sono:

Valore

Descrizione

0

Failover manuale. Un failover in una replica secondaria impostata sul failover manuale deve essere avviato manualmente dall'amministratore del database. Il tipo di failover eseguito dipenderà dalla sincronizzazione della replica secondaria, come segue:

  • Se la replica di disponibilità non è sincronizzata o è ancora in fase di sincronizzazione, è possibile eseguire solo il failover forzato (con la possibile perdita di dati).

  • Se la modalità di disponibilità è impostata su commit sincrono (availability_mode = 1) e la replica di disponibilità è attualmente sincronizzata, è possibile eseguire il failover manuale senza perdita di dati.

1

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.

Per visualizzare un rollup dello stato di sincronizzazione del database di ogni database di disponibilità in una replica di disponibilità, usare le colonne synchronization_health e synchronization_health_desc della DMV sys.dm_hadr_availability_replica_states. 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à.

SuggerimentoSuggerimento

Per visualizzare l'integrità di sincronizzazione di un database di disponibilità specificato, eseguire una query sulle colonne synchronization_health e synchronization_state della DMV sys.dm_hadr_database_replica_states.

failover_mode_desc

nvarchar(60)

Descrizione di failover_mode. I valori possibili sono:

MANUAL

AUTOMATIC

Per modificare la modalità di failover, usare l'opzione FAILOVER_MODE dell'istruzione Transact-SQL ALTER AVAILABILITY GROUP.

session_timeout

int

Periodo di timeout in secondi. Il periodo di timeout è il tempo di attesa massimo rispettato dalla replica per la ricezione di un messaggio da un'altra replica, prima di considerare la connessione tra la replica primaria e secondaria non riuscita. Il timeout della sessione rileva se le repliche secondarie sono connesse alla replica primaria.

Se 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 provocano failover automatici.

Per modificare questo valore, usare l'opzione SESSION_TIMEOUT dell'istruzione Transact-SQL ALTER AVAILABILITY GROUP.

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 = Tutte (impostazione predefinita)

3 = lettura e scrittura

primary_role_allow_connections_desc

nvarchar(60)

Descrizione di primary_role_allow_connections. I valori possibili sono:

ALL

READ_WRITE

secondary_role_allow_connections

tinyint

Specifica se una replica di disponibilità che esegue il ruolo secondario, ovvero una replica secondaria, può accettare connessioni dai client. I valori possibili sono:

0 = No. Non è consentita alcuna connessione ai database nella replica secondaria e i database non sono disponibili per l'accesso in lettura. Questa è l'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 = Tutte. Sono consentite tutte le connessioni ai database nella replica secondaria per l'accesso in sola lettura.

Per ulteriori informazioni, vedere Repliche secondarie attive: Repliche secondarie leggibili (Gruppi di disponibilità AlwaysOn).

secondary_role_allow_connections_desc

nvarchar(60)

Descrizione di secondary_role_allow_connections. I valori possibili sono:

NO

READ_ONLY

ALL

create_date

datetime

Data di creazione della replica.

NULL = La replica non risiede nell'istanza del server.

modify_date

datetime

Data dell'ultima modifica apportata alla replica.

NULL = La replica non risiede nell'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 ulteriori informazioni, vedere Repliche secondarie attive: Backup in repliche secondarie (Gruppi di disponibilità AlwaysOn).

read_only_routing_url

nvarchar(256)

Endpoint di connettività (URL) della replica di disponibilità di sola lettura. Per ulteriori informazioni, vedere Configurare il routing di sola lettura per un gruppo di disponibilità (SQL Server).

Sicurezza

Autorizzazioni

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

Vedere anche

Riferimento

sys.availability_groups (Transact-SQL)

Concetti

Panoramica di Gruppi di disponibilità AlwaysOn (SQL Server)

Gruppi di disponibilità AlwaysOn (SQL Server)

Monitorare Gruppi di disponibilità (Transact-SQL)

Monitorare Gruppi di disponibilità (Transact-SQL)