Esiste un modo semplice per attivare il failover automatico di un singolo database con mirroring?


8

Ho 3 database con mirroring su una singola istanza di sqlserver2008-R2 in alta sicurezza con configurazione automatica del failover. Esiste un modo per attivare il failover automatico di 1 solo database?

Voglio simulare dove il database è effettivamente irraggiungibile e non solo premere il pulsante "Failover" di SSMS. Posso interrompere l'endpoint sul primario ma ciò renderebbe tutti e 3 i database irraggiungibili poiché utilizzano lo stesso endpoint.

Come disabilito solo 1 db?

Risposte:


3

Se il tuo mirroring è configurato correttamente per un elevato failover automatico / di sicurezza, sarei propenso a pensare che potresti semplicemente portare offline il database principale con questo:

alter database YourDb set offline
with rollback immediate
go

Credo che portando offline il database, si avrà il failover automatico senza influire sugli altri due database che non si desidera eseguire il failover.


1
questa è la soluzione che speravo potesse funzionare, ma ricevo un messaggio 1468, il database è coinvolto nel mirroring, la modifica dell'istruzione non è riuscita.
dat_girl,

@dat_girl puoi prima provare a impostarlo come utente singolo con rollback immediato e quindi provare l'istruzione sopra?
Thomas Stringer,

Non ha funzionato neanche @shark, stesso errore. Penso che dovrei smettere di eseguire il mirroring prima di poter apportare modifiche allo "stato" al db.
dat_girl

2

Affinché il mirroring abbia senso, è necessaria almeno una seconda istanza di SQL Server: una per il "principale" e una per il "mirror".

Come installare un'ulteriore istanza, vedere: Configurazione dell'istanza .

Per rendere effettivo il failover automatico, è necessaria anche una terza istanza (il "Testimone" ), il cui scopo è monitorare gli stati (connessione) dell'entità e del mirror ("... il testimone non serve il database. Supporto automatico il failover è l'unico ruolo del testimone ").

Per configurare l'intero mirror con failover, consultare: Failover automatico e mirroring sincrono del database (modalità alta sicurezza) .

Una volta completati i passaggi, è possibile testare la configurazione arrestando uno dei servizi SQL Server (principale o mirror). Il database con mirroring diventa quindi disponibile.

Consiglio vivamente di non eseguire le istanze sullo stesso server reale poiché questo non ti proteggerà da eventuali disastri hardware!


Grazie @vorax, ma ho già installato il mirroring e funziona benissimo. Inoltre, non voglio interrompere il servizio in quanto ciò eliminerebbe tutti i database sull'istanza. Voglio solo smettere 1.
dat_girl

0

Hmm, alter database whateverdb set partner failoverdovrebbe farlo, ma potrebbe portare con sé l'intero server, non ne ho uno a portata di mano con cui posso sperimentare, e i documenti sembrano fastidiosamente usare server e database in modo intercambiabile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.