Server di controllo del mirroring del databaseDatabase Mirroring Witness

Per supportare il failover automatico, è necessario configurare una sessione di mirroring del database in modalità a protezione elevata e usare l'istanza di un terzo server, noto come server di controllo.To support automatic failover, a database mirroring session must be configured in high-safety mode and also possess a third server instance, known as the witness. Il server di controllo del mirroring è un'istanza facoltativa di SQL ServerSQL Server che consente al server mirror in una sessione in modalità a protezione elevata di stabilire se avviare un failover automatico.The witness is an optional instance of SQL ServerSQL Server that enables the mirror server in a high-safety mode session to recognize whether to initiate an automatic failover. A differenza dei due partner, il server di controllo del mirroring non serve il database,Unlike the two partners, the witness does not serve the database. Il supporto del failover automatico è l'unico ruolo del server di controllo del mirroring.Supporting automatic failover is the only role of the witness.

Nota

In modalità a prestazioni elevate, il server di controllo del mirroring può influenzare negativamente la disponibilità.In high-performance mode, the witness can adversely affect availability. Se un server di controllo del mirroring è configurato per una sessione di mirroring del database, il server principale deve essere connesso almeno a una delle istanze degli altri server, ovvero il server mirror o il server di controllo del mirroring, oppure a entrambe.If a witness is configured for a database mirroring session, the principal server must be connected at least to one of the other server instances, the mirror server or the witness, or both of them. In caso contrario, il database non è più disponibile e diventa impossibile forzare il servizio (con possibile perdita di dati).Otherwise, the database becomes unavailable and forcing service (with possible data loss) is impossible. Per tale motivo, nella modalità a prestazioni elevate è fortemente consigliabile mantenere sempre inattivo il server di controllo del mirroring.Therefore, for high-performance mode, we strongly recommend that you always keep the witness set to OFF. Per informazioni sull'impatto di un server di controllo sulla modalità a prestazioni elevate, vedere Modalità di funzionamento del mirroring del database.For information about the impact of a witness on high-performance mode, see Database Mirroring Operating Modes.

Nella figura seguente viene illustrata una sessione in modalità a protezione elevata con un server di controllo del mirroring.The following illustration shows a high-safety mode session with a witness.

Sessione di mirroring con un server di controllo del mirroringMirroring session with a witness

Contenuto dell'argomentoIn This Topic:

Utilizzo di un server di controllo del mirroring in più sessioni Using a Witness in Multiple Sessions

Un'istanza del server specifica può fungere da server di controllo del mirroring in sessioni di mirroring del database simultanee, ogni sessione per un database diverso.A specific server instance can act as a witness in concurrent database mirroring sessions, each for a different database. Sessioni diverse possono avere luogo con partner diversi.Different sessions can be with different partners. Nella figura seguente viene illustrata un'istanza del server che rappresenta un server di controllo del mirroring in due sessioni di mirroring del database con partner diversi.The following illustration shows a server instance that is a witness in two database mirroring sessions with different partners.

Istanza del server che rappresenta il server di controllo del mirroring per 2 databaseServer instance that is a witness for 2 databases

Un'istanza a server singolo può inoltre fungere contemporaneamente da server di controllo del mirroring in alcune sessioni e da partner in altre.A single-server instance can also function at the same time as a witness in some sessions and a partner in other sessions. Tuttavia, in pratica, un'istanza del server funge in genere da server di controllo del mirroring o da partner.However, in practice, a server instance typically functions as either a witness or a partner. I partner richiedono infatti computer sofisticati, con hardware sufficiente per supportare un database di produzione, mentre è possibile eseguire il server di controllo del mirroring in qualunque sistema Windows disponibile che supporti SQL Server 2017SQL Server 2017.This is because the partners require sophisticated computers that have enough hardware to support a production database, whereas the witness can run on any available Windows system that supports SQL Server 2017SQL Server 2017.

Indicazioni relative a software e hardware Software and Hardware Recommendations

È fortemente consigliabile che il server di controllo del mirroring si trovi su un computer diverso rispetto ai partner.We strongly recommend that the witness reside on a separate computer from the partners. I partner di mirroring del database sono supportati solo da SQL ServerSQL Server Standard Edition e da SQL ServerSQL Server Enterprise Edition.Database mirroring partners are supported only by SQL ServerSQL Server Standard edition and by SQL ServerSQL Server Enterprise edition. I server di controllo, invece, sono supportati anche da SQL ServerSQL Server Workgroup e da SQL ServerSQL Server Express.Witnesses, in contrast, are also supported by SQL ServerSQL Server Workgroup and by SQL ServerSQL Server Express. Eccetto durante un aggiornamento da una versione precedente di SQL ServerSQL Server, le istanze del server in una sessione di mirroring devono essere tutte eseguite con la stessa versione di SQL ServerSQL Server.Except during an upgrade from an earlier version of SQL ServerSQL Server, the server instances in a mirroring session must all be running the same version of SQL ServerSQL Server. Ad esempio, un server di controllo del mirroring SQL Server 2008SQL Server 2008 è supportato durante l'aggiornamento da una configurazione di mirroring di SQL Server 2008SQL Server 2008 , ma non può essere aggiunto a una configurazione di mirroring di SQL Server 2008 R2SQL Server 2008 R2 esistente, nuova o successiva.For example, a SQL Server 2008SQL Server 2008 witness is supported when you are upgrading from a SQL Server 2008SQL Server 2008 mirroring configuration but cannot be added to an existing or new SQL Server 2008 R2SQL Server 2008 R2 or later mirroring configuration.

Un server di controllo del mirroring può essere eseguito su qualsiasi computer affidabile che supporti una di queste versioni di SQL ServerSQL Server.A witness can run on any reliable computer system that supports any of these editions of SQL ServerSQL Server. Tuttavia è consigliabile che ogni istanza del server usata come server di controllo soddisfi la configurazione minima necessaria per la versione di SQL ServerSQL Server Standard in esecuzione.However, we recommend that every server instance that is used as a witness correspond to the minimum configuration that is required for the SQL ServerSQL Server Standard version that you are running. Per altre informazioni su questi requisiti, vedere Requisiti hardware e software per l'installazione di SQL Server 2016.For more information about these requirements, see Hardware and Software Requirements for Installing SQL Server 2016.

Ruolo del server di controllo del mirroring nel failover automatico Role of the Witness in Automatic Failover

Nel corso di una sessione di mirroring del database viene eseguito il monitoraggio dello stato di connessione di tutte le istanze del server.Throughout a database mirroring session, all the server instances monitor their connection status. Se i partner vengono disconnessi gli uni dagli altri, si basano sul server di controllo del mirroring per assicurare che solo uno di essi stia attualmente rispondendo alle richieste del database.If the partners become disconnected from each other, they rely on the witness to make sure that only one of them is currently serving the database. Se un server mirror sincronizzato perde la connessione al server principale ma rimane connesso al server di controllo del mirroring, il server mirror contatta il server di controllo del mirroring per determinare se quest'ultimo ha perso la connessione al server principale:If a synchronized mirror server loses its connection to the principal server but remains connected to the witness, the mirror server contacts the witness to determine whether the witness has lost its connection to the principal server:

  • Se il server principale è ancora connesso al server di controllo del mirroring, il failover automatico non avviene.If the principal server is still connected to the witness, automatic failover does not occur. Il server principale continua invece a rispondere alle richieste del database accumulando al contempo record del log da inviare al server mirror quando il partner si riconnette.Instead, the principal server continues to server the database while accumulating log records to send the mirror server when the partners reconnect.

  • Se anche il server di controllo del mirroring viene disconnesso dal server principale, il server mirror viene a conoscenza del fatto che il database principale è diventato non disponibile.If the witness is also disconnected from the principal server, the mirror server knows that principal database has become unavailable. In questo caso, il server mirror avvia immediatamente un failover automatico.In this case, the mirror server immediately initiates an automatic failover.

  • Se il server mirror viene disconnesso dal server di controllo del mirroring e dal server principale, il failover automatico non è possibile, indipendentemente dallo stato del server principale.If the mirror server is disconnected from the witness and also from the principal server, automatic failover is not possible, regardless of the state of the principal server.

    Il requisito che prevede che almeno due delle istanze del server debbano essere connesse è noto come quorum.The requirement that at least two of the server instances be connected is known as quorum. Il quorum assicura che il database possa essere utilizzato da un solo partner per volta.Quorum makes sure that the database can only be served by one partner at a time. Per informazioni sul funzionamento del quorum e sul suo impatto su una sessione, vedere Quorum: Impatto di un server di controllo del mirroring sulla disponibilità del database (mirroring del database).For information about how quorum works and its impact on a session, see Quorum: How a Witness Affects Database Availability (Database Mirroring).

Per aggiungere o rimuovere un server di controllo del mirroring To Add or Remove a Witness

Per aggiungere un server di controllo del mirroringTo add a witness

Vedere ancheSee Also

Cambio di ruolo durante una sessione di mirroring del database (SQL Server) Role Switching During a Database Mirroring Session (SQL Server)
Modalità di funzionamento del mirroring del database Database Mirroring Operating Modes
Quorum: Impatto di un server di controllo del mirroring sulla disponibilità del database (mirroring del database) Quorum: How a Witness Affects Database Availability (Database Mirroring)
Possibili errori durante il mirroring del database Possible Failures During Database Mirroring
Stati di mirroring (SQL Server)Mirroring States (SQL Server)