Mirroring vs. Log Shipping in SQL Server 2005
-
11-07-2019 - |
Domanda
Sono interessato a sentire i pensieri delle persone sui pro e contro del mirroring del database e della spedizione dei log in questo scenario: dobbiamo impostare una situazione di backup del database in cui esiste esattamente un server secondario che non deve essere automaticamente ripreso quando il primario non riesce. Il recupero e l'avvio con il secondario non dovrebbero richiedere troppo tempo.
Soluzione
Mirroring
- Il mirroring del database è limitato a solo due server.
- Il mirroring con un server Witness consente l'alta disponibilità e il failover automatico.
- Puoi configurare la tua stringa DSN in modo che contenga entrambi i server con mirroring in modo che quando cambiano non noti nulla.
- Durante il mirroring, non è possibile accedere al database con mirroring. È in modalità Sincronizzazione / Ripristino.
- Il mirroring con SQL Server 2005 standard edition non è utile per il bilanciamento del carico (vedere la frase sopra)
Spedizione log
- Puoi effettuare il log shipping su più server.
- Il log shipping è aggiornato solo quanto spesso viene eseguito il lavoro. Se i log vengono spediti ogni 15 minuti, il server secondario potrebbe arrivare fino a 15 minuti. Rendendolo più di un Warm Standby.
- È possibile lasciare il database in modalità di sola lettura durante l'aggiornamento. Buono per i server di report.
- Buono per il ripristino di emergenza
Altri suggerimenti
Ai fini del backup, consiglierei il mirroring: mantiene una copia sempre aggiornata del database senza problemi. Se non hai bisogno di un failover automatico, hai bisogno solo di due server / istanze. Nota che la modalità ad alte prestazioni è disponibile solo nell'edizione Enterprice (sp)!
Il passaggio al database secondario richiede più tempo con il log shipping, ma non è poi così male. Dovrai copiare manualmente tutti i file di backup non copiati, applicare i backup del registro delle transazioni al database secondario, ripristinare il database secondario e modificarne il ruolo in primario. Se i vecchi database primari sono accessibili, è necessario eseguire il backup del registro delle transazioni prima di iniziare. Il failover con il mirroring è un po 'più semplice e può essere eseguito automaticamente se si utilizza la modalità Disponibilità elevata. Anche quando si utilizza la modalità ad alte prestazioni, è comunque un'operazione con una sola istruzione.