Jika saya gagal pada satu database, apakah yang lain yang memiliki mirror endpoint yang sama juga gagal?

11

Kami memiliki dua pengaturan basis data untuk mirroring pada satu contoh SQL Server: database uji dan database produksi. Keduanya dicerminkan ke server lain menggunakan titik akhir yang sama persis.

Jika saya masuk ke Properti Database untuk database pengujian dan klik tombol "Kegagalan", apakah itu akan gagal atas basis data produksi juga karena kedua database berbagi titik akhir mirror dan properti Server Network Addresses mereka sama?

masukkan deskripsi gambar di sini

Saya khawatir karena ketika saya mengatur mirroring untuk database ke-2, saya tidak perlu mengkonfigurasi sesuatu yang baru. Itu hanya menggunakan semua informasi yang ada.

Jika saya menggunakan tombol "Failover" dari Properti Database, apakah itu akan mengakibatkan kegagalan atas semua database yang menggunakan titik akhir itu, atau hanya database tertentu yang saya lihat untuk properti itu?

Rachel
sumber

Jawaban:

19

@ mrdenny jawaban akurat bahwa kegagalan lebih dari satu database tidak akan mengakibatkan semua database lainnya juga gagal.

Namun hanya untuk memberikan gambaran lebih lanjut tentang apa itu mirroring Endpoint database :

Dari BOL ,

Manajemen koneksi di Microsoft SQL Server 2005 dan versi yang lebih baru didasarkan pada titik akhir. Endpoint adalah objek SQL Server yang memungkinkan SQL Server untuk berkomunikasi melalui jaringan. Untuk mirroring basis data, instance server memerlukan titik akhir mirroring basis data khusus miliknya. Semua koneksi mirroring pada contoh server menggunakan titik akhir mirroring database tunggal. Titik akhir ini adalah titik akhir tujuan khusus yang digunakan secara eksklusif untuk menerima koneksi mirroring database dari instance server lain.

Agar lebih fleksibel, Anda dapat menggunakan T-sql untuk melakukan failover manual:

Matikan mirroring (break mirroring) pada mirror DB.

ALTER DATABASE <<DB NAME>> SET PARTNER OFF

Atur mod pemulihan DB ke RECOVERY

RESTORE DATABASE <<DB NAME>> WITH RECOVERY

Memperbaiki dan pengguna yatim jika Anda menggunakan otentikasi SQL

EXEC sp_change_users_login Auto_Fix , ‘<<username>>’

EDIT:

Karena Anda menggunakan mode keamanan tinggi (sesuai tangkapan layar Anda), Anda dapat menggunakan yang berikut dari server utama

ALTER DATABASE <<DB NAME>> SET PARTNER FAILOVER

Dengan melakukan itu, hanya peran pembalikan yang terjadi dan arah mirroring terbalik - kepala sekolah menjadi cermin dan sebaliknya. Perhatikan bahwa CERMIN tidak RUSAK.

Perhatikan bahwa per artikel MSDN ini

Kegagalan manual hanya dapat dimulai dari server utama.

Jika Anda ingin mengotomatiskan seluruh failover tersebut, lihat Otomatisasi Database Mirroring

Kin Shah
sumber
8

Tidak, itu tidak akan. Basis data gagal secara independen satu sama lain. Tidak ada salahnya gagal atas database pengujian, basis data produksi akan tetap di tempatnya.

mrdenny
sumber