เชื่อมต่อเซิร์ฟเวอร์มิเรอร์ SQL Server 2008 R2 อีกครั้ง


10

เซิร์ฟเวอร์ failover มีสถานะ (Mirror, Disconnected, In recovery) และเซิร์ฟเวอร์หลักมีสถานะ (Principal, Disconnected)

กระบวนการเชื่อมต่อเซิร์ฟเวอร์เหล่านี้ใหม่เป็นอย่างไร


นี่คือคำถามที่เกี่ยวข้องที่มีลักษณะคล้ายกับคำถามนี้ ลองดูและช่วยดูว่า: การทำลายและการกู้คืนมิเรอร์ต่อไปนี้เป็นขั้นตอนสั้น ๆ เกี่ยวกับวิธีการหยุดชั่วคราวหรือดำเนินการทำมิเรอร์ฐานข้อมูลต่อหากคุณยังมีปัญหาหลังจากอ่านบทความเหล่านั้นให้อัปเดตสิ่งที่คุณพยายาม และเราจะไปจากที่นั่น
แอรอน

คำตอบ:


6

บางครั้งการรีสตาร์ทมิเรอร์ปลายทางบนเซิร์ฟเวอร์หลักจะแก้ไขปัญหานี้

หากต้องการทำสิ่งนี้ให้ใช้ T-SQL ต่อไปนี้

ALTER ENDPOINT Endpoint_Name STATE = STOPPED

ALTER ENDPOINT Endpoint_Name STATE = STARTED

เพื่อรับชื่อของจุดสิ้นสุด

SELECT * FROM sys.endpoints
WHERE type = 4

ดูKB 2490051สำหรับรายละเอียดเพิ่มเติม


1
ฉันต้องรีสตาร์ทจุดปลายทางบนเซิร์ฟเวอร์มิรเรอร์เนื่องจาก KB แนะนำเป็นตัวเลือกที่ 2
Jan Zahradník

4

ก่อนอื่นให้ลองให้พวกเขาเชื่อมต่อใหม่ด้วยคำสั่ง T-SQL นี้บนหลักการ:

ALTER DATABASE AdventureWorks2012 SET PARTNER RESUME;

หากไม่สำเร็จแสดงว่าคุณมีปัญหาด้านการสื่อสารระหว่างอาจารย์ใหญ่กับมิเรอร์และนั่นคือจุดเริ่มต้นของความสนุก มันสามารถเป็นอะไรก็ได้ตั้งแต่การเชื่อมต่อ IP ไปจนถึงการรักษาความปลอดภัยบนปลายทางการมิเรอร์ไปจนถึงวิธีการเข้ารหัสที่แตกต่างกัน ฉันขอแนะนำหนังสือ Pro Robert Server 2008 Mirroring ของ Robert Davisหากคุณต้องการแก้ไขปัญหาอย่างละเอียด


2

ในกรณีของเราเรากำลังใช้การรับรองความถูกต้องของใบรับรองสำหรับการเชื่อมต่อจุดสิ้นสุดการทำมิเรอร์และปัญหาเกิดขึ้นเนื่องจากหนึ่งในใบรับรองที่จุดสิ้นสุดการมิเรอร์ที่ใช้นั้นหมดอายุแล้ว

คุณสามารถตรวจสอบวันหมดอายุของใบรับรองที่เกี่ยวข้องกับการรับรองความถูกต้องของอุปกรณ์ปลายทางได้โดยทำ

SELECT * FROM sys.certificates  

หากเป็นกรณีนี้คุณจะต้องสร้างใบรับรองใหม่สำหรับสิ่งที่หมดอายุแล้วทำALTER ENDPOINTหลังจากนำเข้าแล้ว


1

ฉันแก้ไขปัญหานี้โดยขั้นตอนถัดไปการรีสตาร์ทจุดปลายบนอุปกรณ์หลักไม่ได้ช่วยอะไร

  1. ในระดับประถมศึกษา:

    SELECT * FROM sys.endpoints WHERE type = 4
    
    ALTER ENDPOINT Mirroring STATE = STOPPED
    
    ALTER ENDPOINT Mirroring STATE = STARTED
    
  2. ในกระจก:

    SELECT * FROM sys.endpoints WHERE type = 4
    
    ALTER ENDPOINT Mirroring STATE = STOPPED
    
    ALTER ENDPOINT Mirroring STATE = STARTED
    
  3. กลับไปที่หลัก:

    ALTER DATABASE PACXDSite SET PARTNER RESUME;

0

กรณี:

เมื่อคุณเรียกใช้คำสั่งด้านล่างบนเซิร์ฟเวอร์หลัก:

alter database  'Database_Name' set partner off

หลังจากรันคำสั่งข้างต้น DB ของคุณจะเข้าสู่[mirror, disconnected]สถานะบนเซิร์ฟเวอร์มิเรอร์

ความละเอียด:

ขั้นตอนที่ 1: เรียกใช้แบบสอบถามด้านล่างบนกระจก

exec sp_resetstatus 'Database_Name'

ขั้นตอนที่ 2: หลังจากรันคำสั่งด้านล่าง DB ของคุณจะพร้อมใช้งาน

restore database 'Database_Name' with recovery

หมายเหตุ: ขั้นตอนที่ 2 จะใช้เวลาในการกู้คืน


สิ่งนี้ทำให้มิเรอร์ตัดการเชื่อมต่อโดยสิ้นเชิงและคุณต้องสร้างการมิร์เรอร์อีกครั้ง
Alexey F

0

หาก "RESUME PARTNER" ไม่ทำงาน

ALTER DATABASE AdventureWorks2016 SET PARTNER RESUME;

ฉันจะทำลายมิร์เรอร์สำหรับฐานข้อมูลนั้นและกำหนดค่าใหม่

- ขั้นตอนที่ 1 เมื่อปรินซิปริทำลายกระจกสำหรับฐานข้อมูล

ALTER DATABASE AdventureWorks2016 SET PARTNER OFF;

- ขั้นตอนที่ 2 ON กระจกทำลายกระจกสำหรับฐานข้อมูล

ALTER DATABASE AdventureWorks2016 SET PARTNER OFF;

- ขั้นตอนที่ 3 ON กระจก

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

- ขั้นตอนที่ 4 ON กระจก

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

- ขั้นตอนที่ 5 เมื่อหลัก

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

- ขั้นตอนที่ 6 ในหลักการหากมีการกำหนดค่า WITNESS แล้ว

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

เป็นสิ่งที่ควรค่าแก่การกล่าวถึงทั้งหมดข้างต้นสามารถทำได้ในช่วงเวลาทำงานเนื่องจากฐานข้อมูลหลักจะออนไลน์และพร้อมให้ใช้งานเสมอ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.