Microsoft กระจาย Microsoft SQL Server ๒๐๐๘ R2 Service Pack 1 (SP1) หรือ Microsoft SQL server ๒๐๐๘หรือ Microsoft SQL Server ๒๐๑๒แก้ไขในไฟล์ที่สามารถดาวน์โหลดได้หนึ่งไฟล์ เนื่องจากการแก้ไขจะสะสมแต่ละรุ่นใหม่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมดและการอัปเดตความปลอดภัยทั้งหมดที่รวมอยู่ใน SQL Server ๒๐๐๘ R2 Service Pack 1 (SP1) เวอร์ชันก่อนหน้านี้หรือ SQL Server ๒๐๐๘หรือ Microsoft SQL Server ๒๐๑๒อัปเดตล่าสุด
อาการ
อาจใช้เวลานานในการคืนค่าฐานข้อมูลใน Microsoft SQL Server ๒๐๐๘ R2 หรือใน Microsoft SQL Server ๒๐๐๘หรือใน Microsoft SQL Server ๒๐๑๒
สาเหตุ
ปัญหานี้เกิดขึ้นเนื่องจากใช้เวลานานในการสร้างรายการแฟ้มบันทึกเสมือน (VLF) เมื่อมี VLFs จำนวนมากในฐานข้อมูล
การแก้ไข
ข้อมูลโปรแกรมอัปเดตสะสม
SQL Server 2012
การแก้ไขสำหรับปัญหานี้ถูกนำออกใช้ครั้งแรกใน1การอัปเดตที่สะสมสำหรับ SQL Server ๒๐๑๒ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงที่สะสมนี้ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
๒๖๗๙๓๖๘ แพคเกจโปรแกรมปรับปรุงที่สะสม1สำหรับ SQL Server ๒๐๑๒หมายเหตุ เนื่องจาก builds สะสมแต่ละรุ่นของการแก้ไขใหม่มีโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ใน SQL Server ๒๐๑๒รุ่นก่อนหน้านี้ Microsoft ขอแนะนำให้คุณพิจารณาใช้การแก้ไขการแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
๒๖๙๒๘๒๘ SQL Server ๒๐๑๒รุ่นที่เผยแพร่หลังจากที่มีการเผยแพร่ SQL Server ๒๐๑๒ คุณต้องนำโปรแกรมแก้ไขด่วนของ SQL Server ๒๐๑๒ไปใช้กับการติดตั้ง SQL Server ๒๐๑๒
SQL Server ๒๐๐๘ Service Pack 2
การแก้ไขสำหรับปัญหานี้ถูกนำออกใช้ครั้งแรกใน8การอัปเดตที่สะสมสำหรับ SQL Server ๒๐๐๘ Service Pack 2 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงที่สะสมนี้ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
๒๖๔๘๐๙๖ แพคเกจโปรแกรมปรับปรุงที่สะสม8สำหรับ SQL Server ๒๐๐๘ Service Pack 2หมายเหตุ เนื่องจาก builds สะสมแต่ละรุ่นของการแก้ไขใหม่มีโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ใน SQL Server ๒๐๐๘รุ่นก่อนหน้านี้ Microsoft ขอแนะนำให้คุณพิจารณาใช้การแก้ไขการแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
๒๔๐๒๖๕๙ SQL Server ๒๐๐๘รุ่นที่เผยแพร่หลังจาก SQL Server ๒๐๐๘ Service Pack 2 ถูกเผยแพร่แล้ว โปรแกรมแก้ไขด่วนของ Microsoft SQL Server ๒๐๐๘จะถูกสร้างขึ้นสำหรับ SQL Server service pack ที่เฉพาะเจาะจง คุณต้องนำโปรแกรมแก้ไขด่วนของ SQL Server ๒๐๐๘ Service Pack 2 ไปใช้กับการติดตั้ง SQL Server ๒๐๐๘ Service Pack 2 ตามค่าเริ่มต้นโปรแกรมแก้ไขด่วนใดๆที่มีให้ใน SQL Server service pack จะรวมอยู่ใน SQL Server service pack ถัดไป
SQL Server ๒๐๐๘ Service Pack 3
การแก้ไขสำหรับปัญหานี้ถูกนำออกใช้ครั้งแรกใน3การอัปเดตที่สะสมสำหรับ SQL Server ๒๐๐๘ Service Pack 3 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงที่สะสมนี้ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
๒๖๔๘๐๙๘ แพคเกจโปรแกรมปรับปรุงที่สะสม3สำหรับ SQL Server ๒๐๐๘ Service Pack 3หมายเหตุ เนื่องจาก builds สะสมแต่ละรุ่นของการแก้ไขใหม่มีโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ใน SQL Server ๒๐๐๘รุ่นก่อนหน้านี้ Microsoft ขอแนะนำให้คุณพิจารณาใช้การแก้ไขการแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
๒๖๒๙๙๖๙ รุ่นของ SQL Server ๒๐๐๘รุ่นที่เผยแพร่หลังจาก SQL Server ๒๐๐๘ Service Pack 3 ได้รับการเผยแพร่แล้ว โปรแกรมแก้ไขด่วนของ Microsoft SQL Server ๒๐๐๘จะถูกสร้างขึ้นสำหรับ SQL Server service pack ที่เฉพาะเจาะจง คุณต้องนำโปรแกรมแก้ไขด่วนของ SQL Server ๒๐๐๘ Service Pack 3 ไปใช้กับการติดตั้ง SQL Server ๒๐๐๘ Service Pack 3 ตามค่าเริ่มต้นโปรแกรมแก้ไขด่วนใดๆที่มีให้ใน SQL Server service pack จะรวมอยู่ใน SQL Server service pack ถัดไป
แพคเกจโปรแกรมปรับปรุงที่สะสม11สำหรับ SQL Server ๒๐๐๘ R2
การแก้ไขสำหรับปัญหานี้ถูกนำออกใช้ครั้งแรกใน11การอัปเดตที่สะสม สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับแพคเกจโปรแกรมปรับปรุงที่สะสมนี้สำหรับ SQL Server ๒๐๐๘ R2 ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
๒๖๓๓๑๔๕ แพคเกจโปรแกรมปรับปรุงที่สะสม11สำหรับ SQL Server ๒๐๐๘ R2หมายเหตุ เนื่องจาก builds สะสมแต่ละรุ่นของการแก้ไขใหม่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ในการแก้ไขรุ่นก่อนหน้าของ SQL Server ๒๐๐๘ R2 เราขอแนะนำให้คุณพิจารณาใช้การแก้ไขการแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
๙๘๑๓๕๖ รุ่นของ SQL Server ๒๐๐๘ R2 รุ่นที่เผยแพร่หลังจาก SQL Server ๒๐๐๘ R2 ถูกเผยแพร่
แพคเกจโปรแกรมปรับปรุงที่สะสม4สำหรับ SQL Server ๒๐๐๘ R2 SP1
การแก้ไขสำหรับปัญหานี้ถูกนำออกใช้ครั้งแรกใน4การอัปเดตที่สะสม สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับแพคเกจโปรแกรมปรับปรุงที่สะสมนี้สำหรับ SQL Server ๒๐๐๘ R2 SP1 ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
๒๖๓๓๑๔๖ แพคเกจโปรแกรมปรับปรุงที่สะสม4สำหรับ SQL Server ๒๐๐๘ R2 SP1หมายเหตุ เนื่องจาก builds สะสมแต่ละรุ่นของการแก้ไขใหม่มีโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ในการแก้ไขปัญหาการเผยแพร่ SQL Server ๒๐๐๘ R2 ก่อนหน้านี้ เราขอแนะนำให้คุณพิจารณาใช้การแก้ไขการแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
๒๕๖๗๖๑๖ รุ่นของ SQL Server ๒๐๐๘ R2 รุ่นที่เผยแพร่หลังจากที่มีการเผยแพร่ SQL Server ๒๐๐๘ R2 SP1
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"
ข้อมูลเพิ่มเติม
คุณสามารถตรวจสอบจำนวนเซ็กเมนต์ VLF ได้โดยการตรวจทานไฟล์บันทึกข้อผิดพลาด SQL แล้วโดยการค้นหาหมายเลขลำดับของบันทึก (LSN) ในแต่ละไฟล์การสำรองข้อมูลล็อกธุรกรรม ตัวเลขแรกก่อนสัญลักษณ์เครื่องหมายจุดคู่ใน LSNs จะสอดคล้องกับจำนวน LSN ตัวอย่างเช่นตัวเลขแรกในข้อความที่ให้ข้อมูลแรกสำหรับ LSN คือ1 อย่างไรก็ตามหมายเลขแรกในข้อความแสดงข้อมูลที่สองสำหรับ LSN คือ๑๐๐๐๐๑ ในสถานการณ์สมมตินี้จะมี VLFs ๑๐๐,๐๐๐ที่ใช้ระหว่างเวลาของข้อความที่ให้ข้อมูลแรกและข้อความที่เป็นข้อมูลที่สอง ดังนั้นบันทึกทรานแซคชันที่มีการเข้าสู่ระบบที่มีไฟล์บันทึกเสมือนจำนวนมาก (VLFs) มีลักษณะดังต่อไปนี้:
{Log ถูกสำรองไว้ ฐานข้อมูล: mydbname, วันที่สร้าง (เวลา): 2010/07/08 (12:36:46), LSN แรก: 1:5068:70, LSN ล่าสุด: 1:5108:1, จำนวนอุปกรณ์การถ่ายโอนข้อมูล: 1, ข้อมูลอุปกรณ์: (ไฟล์ = 1, TYPE = DISK: {' C:\folder\logbackup1.trn '}) นี่คือข้อความที่ให้ข้อมูลเท่านั้น ไม่จำเป็นต้องมีการกระทำของผู้ใช้ แฟ้มบันทึกถูกสำรองไว้ ฐานข้อมูล: mydbname, วันที่สร้าง (เวลา): 2010/07/08 (15:36:46), LSN แรก: 100001:5108:1, LSN ล่าสุด: 100002:5108:1, จำนวนอุปกรณ์การถ่ายโอนข้อมูล: 1, ข้อมูลอุปกรณ์: (ไฟล์ = 2, TYPE = DISK: {' C:\folder\logbackup2.trn '}) นี่คือข้อความที่ให้ข้อมูลเท่านั้น ไม่จำเป็นต้องมีการกระทำของผู้ใช้}
อ้างอิง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการบันทึกหมายเลขลำดับ (LSN) ให้เยี่ยมชมเว็บไซต์ MSDN ต่อไปนี้:
ข้อมูลทั่วไปเกี่ยวกับหมายเลขลำดับของบันทึก
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่โครงสร้างไฟล์บันทึกจะมีผลต่อเวลาการกู้คืนของฐานข้อมูลแวะไปที่เว็บไซต์ MSDN ต่อไปนี้:
วิธีที่โครงสร้างไฟล์บันทึกสามารถส่งผลต่อเวลาการกู้คืนของฐานข้อมูลสำหรับข้อมูลเพิ่มเติมเกี่ยวกับการบันทึกธุรกรรม VLFs แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:
วิธีแก้ไขปัญหาชั่วคราว
-
รอให้การคืนค่าหรือการดำเนินการกู้คืนเสร็จสมบูรณ์ถ้าคุณมีฐานข้อมูลที่ไม่ได้รับการกู้คืนที่พบประสิทธิภาพการทำงานที่ช้าเมื่อคุณคืนค่าหรือกู้คืนฐานข้อมูลคุณอาจต้องรอให้การคืนค่าหรือการกู้คืนเสร็จสมบูรณ์ ตัวอย่างเช่นคุณอาจเห็นสถานะแบบออฟไลน์หรือสถานะการกู้คืนใน SQL Server Management Studio (SSMS) สำหรับฐานข้อมูลที่ไม่ได้รับการกู้คืน การหยุดการทำงานของ SQL Server มักจะไม่มีการบรรเทาการกู้คืนที่ช้าและอาจใช้เวลาเพิ่มเติมในการทำซ้ำขั้นตอนการวิเคราะห์การกู้คืนที่เหมือนกันขั้นตอนการทำซ้ำหรือขั้นตอนการเลิกทำ
-
หลีกเลี่ยงการคืนค่าลำดับการบันทึกธุรกรรมที่ประกอบด้วยหลายพัน VLFsถ้าคุณพบประสิทธิภาพการทำงานที่ช้าในขณะที่คุณคืนค่าและกู้คืนฐานข้อมูลโดยใช้ไฟล์สำรองคุณสามารถหลีกเลี่ยงการคืนค่าลำดับการบันทึกธุรกรรมที่มีหลายพัน VLFs เมื่อต้องการระบุไฟล์สำรองที่มีไฟล์บันทึกเสมือนมากที่สุดบันทึกให้ใช้คำสั่งต่อไปนี้เพื่อดูคอลัมน์ FirstLSN และ LastLSN ในไฟล์บันทึกการสำรองข้อมูล: คืนค่า HEADERONLY จากดิสก์ = ' C:\folder\file.trn ' คุณสามารถตัดสินใจหลีกเลี่ยงการคืนค่าไฟล์บันทึกการสำรองข้อมูล หรือคุณสามารถใช้คำสั่งหยุดที่คำสั่งในคำสั่งคืนค่าเพื่อหลีกเลี่ยงส่วนที่อยู่อย่างกระจัดกระจายอย่างมากของล็อกธุรกรรม ถ้าคุณไม่ได้คืนค่าลำดับของล็อกจนถึงช่วงเวลาล่าสุดในระหว่างสถานการณ์การกู้คืนความล้มเหลวการสูญหายของข้อมูลจะเกิดขึ้นใน SQL Server ของฐานข้อมูลของคุณ การสูญหายของข้อมูลนี้เกิดขึ้นเนื่องจากไม่มีการเก็บธุรกรรมทั้งหมด ดังนั้นจึงมีการตัดสินใจเสียทางธุรกิจ คุณสามารถคืนค่าบันทึกทรานแซคชันที่อยู่อย่างกระจัดกระจายได้อย่างสมบูรณ์ อย่างไรก็ตามการดำเนินการนี้อาจใช้เวลาหลายชั่วโมง หรือคุณสามารถใช้คำสั่งหยุดที่คำสั่งในการกู้คืนเพื่อหยุดการกู้คืนก่อนที่จะเป็นส่วนที่มีการกระจายตัวอย่างมากของแฟ้มบันทึก อย่างไรก็ตามธุรกรรมใดๆที่ขาดหายไปที่คุณไม่ได้ใช้จะสูญหายไปหมายเหตุ โดยไม่ต้องติดตั้งโปรแกรมแก้ไขด่วนนี้โดยทั่วไปแล้วจะไม่มีเบี้ยที่ปลอดภัยสำหรับการกู้คืนข้อมูลอย่างรวดเร็วหลังจากที่คุณเริ่มต้น SQL Server ใหม่ SQL Server มีการค้นหารายการของ VLFs เพื่อวิเคราะห์ไฟล์บันทึกเพื่อทำซ้ำธุรกรรมที่เสร็จสมบูรณ์แล้วเมื่อต้องการเลิกทำธุรกรรมที่เสร็จสมบูรณ์เพื่อให้การกู้คืนเสร็จสิ้นเพื่อนำฐานข้อมูลไปใช้แบบออนไลน์ได้อย่างปลอดภัย คุณไม่สามารถข้ามทรานแซคชันในระหว่างการกู้คืนได้อย่างปลอดภัย