Hubungkan kembali server mirroring SQL Server 2008 R2

10

Server failover memiliki status (Mirror, Disconnected, In recovery) dan server utama berstatus (Principal, Disconnected).

Bagaimana proses untuk menghubungkan kembali server-server ini?

seekor kuda tanpa nama
sumber
Ini pertanyaan terkait yang terlihat sangat mirip dengan yang ini. Coba lihat dan lihat apakah itu membantu: Melanggar dan Memulihkan cermin Berikut adalah beberapa langkah cepat tentang cara Menjeda atau Melanjutkan Pencerminan Basis Data Jika Anda masih mengalami masalah setelah membacanya, perbarui posting Anda dengan apa yang sudah Anda coba semua dan kita akan pergi dari sana.
Aaron

Jawaban:

6

Kadang-kadang me-restart titik akhir mirroring pada server utama akan menyelesaikan ini.

Untuk melakukan ini gunakan T-SQL berikut.

ALTER ENDPOINT Endpoint_Name STATE = STOPPED

ALTER ENDPOINT Endpoint_Name STATE = STARTED

Untuk mendapatkan nama titik akhir.

SELECT * FROM sys.endpoints
WHERE type = 4

Lihat KB 2490051 untuk lebih jelasnya.

dezdez
sumber
1
Saya harus me-restart titik akhir pada server mirror karena KB menyarankan sebagai opsi ke-2.
Jan Zahradník
4

Pertama, cobalah untuk membuat mereka terhubung kembali dengan perintah T-SQL ini pada prinsipal:

ALTER DATABASE AdventureWorks2012 SET PARTNER RESUME;

Jika itu gagal, Anda punya masalah komunikasi antara kepala sekolah dan cermin, dan di situlah kesenangan dimulai. Ini bisa berupa apa saja mulai dari konektivitas IP hingga keamanan di titik akhir mirroring hingga metode enkripsi yang berbeda. Saya akan merekomendasikan buku Robert Davis Pro SQL Server 2008 Mirroring jika Anda perlu masuk ke pemecahan masalah yang mendalam.

Brent Ozar
sumber
2

Dalam kasus kami, kami menggunakan otentikasi sertifikat untuk menghubungkan titik akhir mirroring, dan masalahnya adalah karena salah satu sertifikat yang menggunakan titik akhir mirroring telah kedaluwarsa.

Anda dapat memeriksa tanggal kedaluwarsa sertifikat yang terlibat dalam otentikasi titik akhir dengan melakukan a

SELECT * FROM sys.certificates  

Jika ini masalahnya, Anda harus membuat sertifikat baru untuk apa pun yang kedaluwarsa, lalu lakukan ALTER ENDPOINTsetelah mereka diimpor.

Steve Dubrick
sumber
1

Saya memperbaiki masalah ini dengan langkah berikutnya, memulai kembali titik akhir hanya pada PRIMARY tidak membantu

  1. Pada PRIMARY:

    SELECT * FROM sys.endpoints WHERE type = 4
    
    ALTER ENDPOINT Mirroring STATE = STOPPED
    
    ALTER ENDPOINT Mirroring STATE = STARTED
  2. Pada CERMIN:

    SELECT * FROM sys.endpoints WHERE type = 4
    
    ALTER ENDPOINT Mirroring STATE = STOPPED
    
    ALTER ENDPOINT Mirroring STATE = STARTED
  3. Kembali pada PRIMER:

    ALTER DATABASE PACXDSite SET PARTNER RESUME;
A AI
sumber
0

Kasus:

Ketika Anda menjalankan perintah di bawah ini pada server Principal:

alter database  'Database_Name' set partner off

Setelah menjalankan perintah di atas, DB Anda masuk ke [mirror, disconnected]Status di server cermin.

Resolusi:

Langkah 1: Jalankan query di bawah di mirror

exec sp_resetstatus 'Database_Name'

Langkah 2: Setelah menjalankan perintah di bawah ini, DB Anda akan tersedia.

restore database 'Database_Name' with recovery

Catatan: Langkah 2 akan membutuhkan waktu untuk pulih.

Vijay Mane DBA
sumber
Ini membuat mirror benar-benar terputus dan Anda harus membuat mirroring lagi
Alexey F
0

Jika "RESUME PARTNER" tidak berfungsi

ALTER DATABASE AdventureWorks2016 SET PARTNER RESUME;

Saya akan memecahkan cermin untuk database itu dan mengkonfigurasi ulang.

- LANGKAH 1 TENTANG PRINSIP, pecahkan cermin untuk basis data

ALTER DATABASE AdventureWorks2016 SET PARTNER OFF;

- LANGKAH 2 PADA CERMIN, pecahkan cermin untuk basis data

ALTER DATABASE AdventureWorks2016 SET PARTNER OFF;

- LANGKAH 3 PADA CERMIN

RESTORE LAST FULL BACKUP DATABASE WITH NO RECOVERY 
RESTORE TRAN BACKUP DATABASE WITH NO RECOVERY

- LANGKAH 4 PADA CERMIN

ALTER DATABASE AdventureWorks2016 SET PARTNER = 'TCP://PRINCIPAL.MyDomain.COM:5022';

- LANGKAH 5 TENTANG PRINSIP

ALTER DATABASE AdventureWorks2016 SET PARTNER = 'TCP://MIRROR.MyDomain.COM:5022';

- LANGKAH 6 TENTANG PRINSIP, jika SAKSI sudah dikonfigurasi

ALTER DATABASE AdventureWorks2016 SET WITNESS = 'TCP://WITNESS.MyDomain.COM:5022';

Perlu disebutkan bahwa semua hal di atas dapat dilakukan selama jam kerja karena basis data utama akan selalu online dan tersedia.

Cozzaro Nero
sumber