โพสต์นี้จะอธิบายวิธีตั้งค่าการจัดส่งบันทึก ซึ่งเป็นโซลูชันการกู้คืนความเสียหาย (DR) ด้วยฐานข้อมูลที่กำหนดค่า Microsoft® SQL Server® AlwaysOn ที่มีอยู่
แนะนำตัว
คุณลักษณะกลุ่มความพร้อมใช้งาน AlwaysOn (AG) เป็นโซลูชันความพร้อมใช้งานสูงและการกู้คืนจากภัยพิบัติที่ให้ทางเลือกระดับองค์กรในการมิเรอร์ฐานข้อมูล เปิดตัวใน SQL Server 2012 (11.x) AlwaysOn AGs เพิ่มความพร้อมใช้งานของชุดฐานข้อมูลผู้ใช้สำหรับองค์กรสูงสุด AGs รองรับสภาพแวดล้อมที่ล้มเหลวสำหรับชุดฐานข้อมูลผู้ใช้แบบแยกส่วน หรือที่เรียกว่าฐานข้อมูลความพร้อมใช้งาน ซึ่งล้มเหลวพร้อมกัน นอกจากนี้ยังสนับสนุนชุดฐานข้อมูลหลักแบบอ่าน-เขียน และชุดฐานข้อมูลรองที่สอดคล้องกันหนึ่งถึงแปดชุด หรือ AG สามารถสร้างฐานข้อมูลสำรองสำหรับการเข้าถึงแบบอ่านอย่างเดียวและการดำเนินการสำรองข้อมูลบางอย่างได้
การจัดส่งบันทึกของ SQL Server ช่วยให้คุณสามารถส่งรายการบันทึกสำรองโดยอัตโนมัติจากฐานข้อมูลหลักบนอินสแตนซ์เซิร์ฟเวอร์หลักไปยังฐานข้อมูลสำรองอย่างน้อยหนึ่งฐานข้อมูลบนอินสแตนซ์เซิร์ฟเวอร์รองที่แยกจากกัน ข้อมูลบันทึกธุรกรรมจะถูกนำไปใช้กับฐานข้อมูลรองแต่ละฐานข้อมูลแยกกัน
เหตุผลที่คุณอาจต้องการบันทึกการจัดส่งตลอดเวลา
สมมติว่าคุณได้กำหนดค่าการตั้งค่า AlwaysOn ระหว่างเซิร์ฟเวอร์แบบจำลองหลักและแบบจำลองรองของคุณ และมีการใช้ AlwaysOn ในศูนย์ข้อมูลหลัก คุณอาจต้องใช้บันทึกการจัดส่ง หากคุณไม่สามารถขยายการกำหนดค่า Windows Server Failover Cluster (WSFC) ที่จำเป็นลงในไซต์ DR ได้ เหตุผลรวมถึงความเป็นไปได้ดังต่อไปนี้:
- โครงสร้างพื้นฐานหรือพนักงานไม่สามารถรักษาการกำหนดค่า WSFC ระหว่างไซต์ต่างๆ ได้
- คุณไม่สามารถใช้ประโยชน์จากเซิร์ฟเวอร์เป้าหมายในไซต์ DR ในการกำหนดค่า WSFC เนื่องจากเป็นส่วนหนึ่งของการกำหนดค่า WSFC อื่นแล้ว
- ข้อตกลงระดับบริการ (SLA) เกี่ยวกับวัตถุประสงค์จุดกู้คืน (RPO) และวัตถุประสงค์เวลาการกู้คืน (RTO) บังคับให้กู้คืนอย่างรวดเร็วจากข้อผิดพลาดด้วยตนเอง ซึ่งสามารถรับรู้ได้เฉพาะกับการกู้คืนที่ล่าช้าเท่านั้นที่จะกู้คืนบันทึกสำรองของธุรกรรมบนอินสแตนซ์ที่มีความพร้อมใช้งานสูง (HA) และกลยุทธ์ DR
ดังนั้น คุณต้องจัดหาเซิร์ฟเวอร์เป้าหมาย ซึ่งอยู่ในไซต์ DR โดยใช้บันทึกการจัดส่งเพื่อจัดส่งบันทึกธุรกรรมจากการสำรองข้อมูลที่ทำในไซต์หลักบนเซิร์ฟเวอร์หลักปัจจุบัน
ข้อกำหนดเบื้องต้นสำหรับการใช้บันทึกการจัดส่ง
ก่อนที่คุณจะตั้งค่าบันทึกการจัดส่ง ตรวจสอบว่าคุณมีคุณสมบัติตรงตามข้อกำหนดเบื้องต้นต่อไปนี้:
- ฐานข้อมูลหลักต้องใช้รูปแบบการกู้คืนแบบเต็มหรือแบบบันทึกจำนวนมาก การเปลี่ยนฐานข้อมูลเป็นการกู้คืนแบบง่ายจะทำให้การจัดส่งบันทึกหยุดทำงาน
- ก่อนที่คุณจะกำหนดค่าการจัดส่งบันทึก คุณต้องสร้างเส้นทางที่ใช้ร่วมกันเพื่อให้การสำรองข้อมูลบันทึกการทำธุรกรรมพร้อมใช้งานในเซิร์ฟเวอร์รอง
- ขั้นตอนการจัดเก็บการจัดส่งบันทึกจำเป็นต้องมีการเป็นสมาชิกในบทบาทเซิร์ฟเวอร์ที่ดูแลระบบแก้ไข
- เส้นทางที่ใช้ร่วมกันสำรองควรมีสิทธิ์อ่านและเขียนไปยังบัญชีบริการ SQLServer
กำหนดค่าตัวอย่างโซลูชันการจัดส่งบันทึก DR
ในตัวอย่างนี้ เราได้ตั้งค่า AlwasyOn ระหว่างเซิร์ฟเวอร์เรพพลิกาหลักที่เรียกว่า PRIMEHEAD และแบบจำลองรองของคุณที่เรียกว่า HEAD2 ดังที่แสดงในภาพต่อไปนี้:
ส่วนนี้แสดงโซลูชันทีละขั้นตอนเพื่อกำหนดค่าบันทึกการจัดส่งบนฐานข้อมูลที่เป็นส่วนหนึ่งของ AlwaysOn AG
ขั้นตอนที่ 1
กำหนดค่าบันทึกการจัดส่งสำหรับ AdventureWork2014 ฐานข้อมูลระหว่าง PRIMEHEAD และเซิร์ฟเวอร์ DR, HEAD3.
ขณะกำหนดค่าการจัดส่งบันทึกในฐานข้อมูล ให้สำรองข้อมูลทั้งหมดของ AdventureWork2014 ฐานข้อมูลและกู้คืนบน HEAD3 โดยไม่มีการกู้คืน คุณต้องสร้างโฟลเดอร์ที่ใช้ร่วมกันบน PRIMEHEAD เพื่อเก็บข้อมูลสำรองของบันทึกที่ LSCopy
(บันทึกการจัดส่ง) การใช้งาน
ขั้นตอนที่ 2
คลิกขวาที่ฐานข้อมูล เลือก คุณสมบัติ และคลิกที่การจัดส่งบันทึกการทำธุรกรรม ตัวเลือกทางด้านซ้ายของ PRIMEHEAD จากนั้นคลิกที่ เปิดใช้งานเป็นฐานข้อมูลหลักในการกำหนดค่าการจัดส่งบันทึก ช่องทำเครื่องหมายตามที่แสดงในภาพต่อไปนี้:
ขั้นตอนที่ 3
คลิก การตั้งค่าการสำรองข้อมูล เพื่อกำหนดค่า LS Backup ตัวเลือก. เลือกเส้นทางที่แชร์เครือข่ายสำหรับ LS Backup ดังที่แสดงในภาพต่อไปนี้:
ขั้นตอนที่ 4
ณ จุดนี้ คุณยังสามารถกำหนดเวลาการสำรองข้อมูล LS ได้ตามความต้องการของคุณ อย่างไรก็ตาม ในสถานการณ์นี้ ให้ใช้การตั้งค่าเริ่มต้น
ขั้นตอนที่ 5
หากต้องการเพิ่มเซิร์ฟเวอร์ DR ให้คลิก เพิ่ม ดังแสดงในภาพต่อไปนี้:
ขั้นตอนที่ 6
คลิกเชื่อมต่อ เพื่อเชื่อมต่อกับ HEAD3 ซึ่งเป็นเซิร์ฟเวอร์ DR ดังแสดงในภาพต่อไปนี้:
ขั้นตอนที่ 7
ใน เริ่มต้นฐานข้อมูลรอง ให้เลือกตัวเลือกที่สามเนื่องจากฐานข้อมูลได้รับการเตรียมใช้งานบน HEAD3 แล้ว
ขั้นตอนที่ 8
คลิก คัดลอกไฟล์ แท็บ ใน โฟลเดอร์ปลายทางสำหรับไฟล์ที่คัดลอก กล่อง พิมพ์เส้นทางที่คัดลอกสำรองข้อมูลบันทึกธุรกรรม สำหรับสถานการณ์นี้ ให้ใช้ C:\LSCopyAlwaysOn สำหรับเส้นทางดังแสดงในภาพต่อไปนี้:
ขั้นตอนที่ 9
ใน กู้คืนบันทึกธุรกรรม ใต้แท็บ สถานะฐานข้อมูลเมื่อกู้คืนข้อมูลสำรอง ,เลือก ไม่มีโหมดการกู้คืน หรือ โหมดสแตนด์บาย ดังแสดงในภาพต่อไปนี้:
ในตัวอย่างนี้ เราเลือก ไม่มีโหมดการกู้คืน ซึ่งหมายความว่า DRdatabase ไม่สามารถเข้าถึงได้ หากคุณเลือกโหมดสแตนด์บาย ฐานข้อมูล DR จะพร้อมใช้งานสำหรับผู้ใช้ในโหมดอ่านอย่างเดียว
ขั้นตอนที่ 10
คลิก ตกลง เพื่อเริ่มบันทึกการจัดส่ง
หน้าจอต่อไปนี้จะปรากฏขึ้น:
ขั้นตอนที่ 11
ในการตรวจสอบสถานะการจัดส่งบันทึก ให้คลิกขวาที่เซิร์ฟเวอร์ DR, HEAD3, อินสแตนซ์ และเลือก รายงาน->รายงานมาตรฐาน—>สถานะการจัดส่งบันทึกธุรกรรม . หากหน้าจอต่อไปนี้ปรากฏขึ้น แสดงว่าการขนส่งบันทึกเป็นปกติและทำงานได้ตามที่คาดไว้
หาก AG เกิดข้อผิดพลาดระหว่าง PRIMEHEAD และ HEAD2 การจัดส่งบันทึกจะถูกขัดจังหวะจนกว่าคุณจะกำหนดค่าโดยพิจารณาจากข้อกำหนดของ AG
ตอนนี้คุณสามารถกำหนดค่าบันทึกการจัดส่งจาก HEAD2 ถึง HEAD3 ซึ่งจะไม่ส่งผลกระทบกับฟังก์ชันการจัดส่งแม้ว่าจะมีการล้มเหลวในอนาคตระหว่างแบบจำลอง AG การสำรองข้อมูลบันทึกจะเกิดขึ้นบนเส้นทางหรือตำแหน่งเดียวกันเสมอ ไม่ว่าแบบจำลองใดจะทำหน้าที่เป็นตัวหลัก
คุณต้องเริ่มต้นการล้มเหลวระหว่างเรพลิกา ก่อนเริ่มต้น thefail over ให้ทำตามขั้นตอนต่อไปนี้:
-
ดำเนินการงานสำรองข้อมูล LS บนแบบจำลองหลักและปิดใช้งานงาน
-
ดำเนินการคัดลอก LS และกู้คืนงานบนแบบจำลองรองแล้วปิดใช้งาน
เมื่อต้องการทำเช่นนี้ ให้คลิกขวาที่ AG และเลือกตัวเลือกการล้มเหลวดังที่แสดงในภาพต่อไปนี้:
คุณยังสามารถทำสิ่งนี้ให้สำเร็จได้โดยใช้คำสั่ง T-SQL ต่อไปนี้เพื่อทริกเกอร์ความล้มเหลวของ AG ด้วยตนเอง:
USE master;
GO
ALTER AVAILABILITY GROUP [AGName] FAILOVER
GO
หลังจากความล้มเหลวเสร็จสิ้น หน้าต่างต่อไปนี้จะปรากฏขึ้น:
ขั้นตอนที่ 12
หลังจากที่ AG ล้มเหลวระหว่าง PRIMEHEAD และ HEAD2 อินสแตนซ์หลักปัจจุบันคือ HEAD2
ทำตามขั้นตอนเดียวกันเพื่อกำหนดค่าบันทึกการจัดส่งจากเซิร์ฟเวอร์หลัก ornode ปัจจุบัน HEAD2 ไปยัง DR Server, HEAD3 ขณะกำหนดค่าการจัดส่งบันทึก ให้เลือกเส้นทางที่ใช้ร่วมกันที่คุณใช้ระหว่างการกำหนดค่า LS ระหว่าง PRIMEHEAD และHEAD3 \Avail2017\lsbackup .
ขั้นตอนที่ 13
หลังจากที่บันทึกการจัดส่งระหว่าง HEAD2 งานหลักปัจจุบันและ HEAD3 เสร็จสิ้น งานสำรองข้อมูล LS จะถูกสร้างขึ้นบน HEAD2 และงานสำเนา LS และงานการคืนค่า LS อีกชุดจะถูกสร้างขึ้นบน HEAD3
อีกครั้ง ให้เริ่มต้นความล้มเหลวระหว่างแบบจำลอง AG ก่อนที่จะเริ่มต้น thefail over ตรวจสอบให้แน่ใจว่าได้ทำตามขั้นตอนต่อไปนี้:
-
ดำเนินการงานสำรอง LS บนหลัก (HEAD2) และปิดใช้งานงาน
-
ดำเนินการคัดลอกและกู้คืนงาน LS ในระดับรอง (HEAD3) แล้วปิดใช้งาน
ขั้นตอนที่ 14
หลังจากความล้มเหลวในขั้นสุดท้าย หลักปัจจุบันคือ PRIMEHEAD, HEAD2 คือแบบจำลองรอง และ HEAD3 คือเซิร์ฟเวอร์ DR เนื่องจากงานสำรองข้อมูล LS มีอยู่ทั้งบนเซิร์ฟเวอร์ (หลักและรอง) คุณจึงต้องแก้ไขงานสำรองข้อมูล LS ทั้งบน PRIMEHEAD และ HEAD2 เพื่อให้แน่ใจว่าจะใช้เฉพาะบันทึกสำรองจากเซิร์ฟเวอร์หลักปัจจุบันเท่านั้น
ในการดำเนินการนี้ ให้เพิ่มรหัสต่อไปนี้ไปยังขั้นตอนที่ 1:
Declare @dbname as varchar(20)
Set @dbname=’AdventureWorks2014’
If sys.fn_hadr_backup_is_preferred_replica (@dbname)<>1
begin
RAISERROR (50005,-- Message id,
16, -- Severity,
1, --State,
N’This is not the primary server backup is rolled back’);
end
รูปภาพต่อไปนี้แสดงสิ่งนี้:
หลังจากทำการเปลี่ยนแปลงก่อนหน้านี้แล้ว โปรดสังเกตว่างานสำรองข้อมูล LS เริ่มล้มเหลวบนเซิร์ฟเวอร์สำรอง แต่ทำงานได้ดีบนเซิร์ฟเวอร์หลัก
ขั้นตอนที่ 15
เนื่องจากมีงานคัดลอกและกู้คืน LS สองชุดบน HEAD3 ซึ่งเป็นเซิร์ฟเวอร์ DR คุณต้องตรวจสอบให้แน่ใจว่ามีการเรียกใช้งานเพียงชุดเดียวในแต่ละครั้ง คุณต้องเปิดใช้งานงานที่สร้างขึ้นในขณะที่กำหนดค่าการจัดส่งบันทึกระหว่าง HEAD2 และHEAD3 และปิดใช้งานชุดงานอื่น ๆ
ภาพต่อไปนี้แสดงรายละเอียดเพิ่มเติม:
ตอนนี้ คุณได้กำหนดค่าบันทึกการจัดส่งบนฐานข้อมูลที่มีอยู่แล้วของ AlwaysOn AG เรียบร้อยแล้ว ไม่ว่าเซิร์ฟเวอร์ใดจะทำงานเป็นเซิร์ฟเวอร์หลัก การจัดส่งบันทึกของคุณจะซิงค์กัน
หมายเหตุ :ขอแนะนำว่าอย่าทำการเปลี่ยนแปลงใดๆ ในการผลิตโดยไม่ทำการทดสอบ ก่อนนำโซลูชันนี้ไปใช้ในสภาพแวดล้อมที่ใช้งานจริง ขั้นแรกให้ใช้การกำหนดค่านี้ในสภาพแวดล้อมการทดสอบ
การตรวจสอบ:
a) ตรวจสอบให้แน่ใจว่างานสำรองข้อมูลทำงานสำเร็จบนแบบจำลองหลักปัจจุบัน b) เส้นทางสำรองควรเหมือนกับเส้นทางที่แชร์ c) งานคัดลอกและกู้คืนซึ่งสร้างขึ้นระหว่างการกำหนดค่า LS จาก HEAD2 ถึง HEAD3 ควรทำงานอย่างถูกต้อง บนเซิร์ฟเวอร์ DR.d) ตรวจสอบสถานะการจัดส่งบันทึกธุรกรรมในส่วนรายงานมาตรฐาน
บทสรุป
การกำหนดค่าบันทึกการจัดส่งบนฐานข้อมูลที่มีความพร้อมใช้งานสูงทำให้คุณสามารถตั้งค่าเซิร์ฟเวอร์ aDR ในศูนย์ข้อมูลอื่นได้ การตั้งค่านี้พิสูจน์ได้ว่ามีประโยชน์ในกรณีที่เกิดภัยพิบัติ และทำให้ธุรกิจของคุณไม่ได้รับผลกระทบในขณะที่ต้องใช้ความพยายามด้วยตนเองเพียงเล็กน้อยแม้ว่าเซิร์ฟเวอร์ในศูนย์ข้อมูลอื่นจะได้รับผลกระทบก็ตาม
ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม
เพิ่มประสิทธิภาพสภาพแวดล้อมของคุณด้วยการดูแลระบบ การจัดการ และการกำหนดค่าจากผู้เชี่ยวชาญ
บริการแอปพลิเคชันของ Rackspace(RAS) ผู้เชี่ยวชาญจะให้บริการแบบมืออาชีพและที่มีการจัดการในแอปพลิเคชันที่หลากหลาย:
- แพลตฟอร์มอีคอมเมิร์ซและประสบการณ์ดิจิทัล
- การวางแผนทรัพยากรองค์กร (ERP)
- ระบบธุรกิจอัจฉริยะ
- การจัดการลูกค้าสัมพันธ์ของ Salesforce (CRM)
- ฐานข้อมูล
- อีเมลโฮสติ้งและประสิทธิภาพการทำงาน
เราจัดส่ง:
- ความเชี่ยวชาญที่เป็นกลาง :เราลดความซับซ้อนและเป็นแนวทางในการสร้างสรรค์สิ่งใหม่ของคุณ โดยมุ่งเน้นที่ความสามารถที่มอบคุณค่าในทันที
- ประสบการณ์สุดคลั่ง ™:เรารวมกระบวนการก่อน เทคโนโลยีที่สอง®แนวทางพร้อมการสนับสนุนทางเทคนิคเฉพาะเพื่อมอบโซลูชันที่ครอบคลุม
- ผลงานที่ยอดเยี่ยม :เราใช้ประสบการณ์ระบบคลาวด์ที่ครอบคลุมเพื่อช่วยคุณเลือกและปรับใช้เทคโนโลยีที่เหมาะสมบนระบบคลาวด์ที่เหมาะสม
- ส่งไว :เราพบคุณในที่ที่คุณอยู่ในการเดินทางของคุณและปรับความสำเร็จของเราไปพร้อมกับคุณ
แชทเลยเพื่อเริ่มต้น