ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
ลงชื่อเข้าใช้ด้วย Microsoft
ลงชื่อเข้าใช้หรือสร้างบัญชี
สวัสดี
เลือกบัญชีอื่น
คุณมีหลายบัญชี
เลือกบัญชีที่คุณต้องการลงชื่อเข้าใช้

Microsoft แจกจ่ายการแก้ไข Microsoft SQL Server 2005, 2008 และ 2008 R2 เป็นไฟล์ที่ดาวน์โหลดได้ไฟล์เดียว เนื่องจากการแก้ไขเป็นแบบสะสม การเผยแพร่ใหม่แต่ละครั้งจะมีโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการเผยแพร่การแก้ไขSQL Server 2005, 2008 และ 2008 R2 ก่อนหน้า

อาการ

พิจารณาสถานการณ์ต่อไปนี้:

  • คุณติดตั้ง Microsoft SQL Server 2005, Microsoft SQL Server 2008 หรือ Microsoft SQL Server 2008 R2 บนคอมพิวเตอร์

  • ฐานข้อมูลอย่างน้อยหนึ่งฐานข้อมูลอยู่ในรูปแบบการกู้คืนแบบเต็มหรือแบบบันทึกเป็นกลุ่ม

  • ขนาดเริ่มต้นของแฟ้มล็อกธุรกรรมสําหรับฐานข้อมูลมีขนาดเล็ก อย่างไรก็ตามไฟล์ธุรกรรมจะมีขนาดใหญ่ขึ้น

  • การเพิ่มการเติบโตของการขยายโดยอัตโนมัติของไฟล์บันทึกธุรกรรมถูกกําหนดค่าเป็นขนาดเล็ก ตัวอย่างเช่น การเพิ่มการเติบโตของ autogrow จะถูกกําหนดค่าเป็นหนึ่งเมกะไบต์หรือเป็นหนึ่งเปอร์เซ็นต์ หรือคุณทําให้ไฟล์บันทึกธุรกรรมเพิ่มขึ้นโดยใช้การเติบโตด้วยตนเองขนาดเล็ก

  • ไฟล์บันทึกทรานแซคชันจะเพิ่มขึ้นทีละน้อย หลังจากนั้นสักครู่ไฟล์บันทึกธุรกรรมจะมีขนาดใหญ่

    ตัวอย่างเช่น แฟ้มบันทึกทรานแซคชันจะขยายจากหนึ่งร้อยเมกะไบต์เป็นสิบกิกะไบต์ ไฟล์บันทึกทรานแซคชันจะเพิ่มขึ้นครั้งละหนึ่งเมกะไบต์ในแต่ละการเติบโต

ในสถานการณ์นี้ คุณอาจพบปัญหาต่อไปนี้:

  • การกู้คืนฐานข้อมูลจะช้าลงเมื่อฐานข้อมูลเริ่มทํางานถ้ามีงานจํานวนมากที่ต้องการกู้คืน

    ตัวอย่างเช่น ธุรกรรมค้างอยู่รอการเปิดเป็นเวลานาน หรือทรานแซคชันจํานวนมากที่มีขนาดเล็กจะไม่ได้รับการยอมรับเมื่อSQL Serverปิดเครื่องหรือเริ่มระบบใหม่ ในกรณีนี้ คุณอาจได้รับข้อผิดพลาดสําหรับเวลาการกู้คืนที่ใช้เวลานานในระยะการวิเคราะห์ ในระยะการเลิกทํา หรือในระยะทําซ้ํา ข้อผิดพลาดมีลักษณะดังต่อไปนี้และถูกบันทึกในแฟ้มบันทึกข้อผิดพลาด SQL Server 2005:

    การวิเคราะห์ฐานข้อมูล 'mydatabase' (7) สมบูรณ์ 0% (ประมาณ 1234 วินาที) นี่คือข้อความให้ข้อมูลเท่านั้น ไม่จําเป็นต้องดําเนินการใดๆ ของผู้ใช้

  • การกู้คืนฐานข้อมูลจะช้าลงเมื่อไฟล์สํารองฐานข้อมูลแบบเต็มและลําดับบันทึกทรานแซคชันเพิ่มเติมถูกคืนค่าถ้าฐานข้อมูลถูกทําให้ออนไลน์

    หมายเหตุ เมื่อต้องการทําให้ฐานข้อมูลออนไลน์ระหว่างการดําเนินการคืนค่า ให้ใช้ไวยากรณ์ WITH RECOVERY หรือ WITH STANDBY = ตัวเลือก<> ไวยากรณ์

  • การกู้คืนการมิเรอร์ฐานข้อมูลช้าบนเซิร์ฟเวอร์คู่ค้าในการมิเรอร์

  • ความคืบหน้าของตัวแทนโปรแกรมอ่านแฟ้มบันทึกสําหรับการจําลองแบบทรานแซคชันจะช้าสําหรับการดําเนินการต่อไปนี้:

    • บันทึกทรานแซคชันของฐานข้อมูลผู้เผยแพร่ถูกแยกวิเคราะห์

    • คําสั่งถูกเพิ่มลงในฐานข้อมูลการแจกจ่าย

    • ธุรกรรมจะถูกจําลองแบบ

  • ประสิทธิภาพการทํางานที่ช้าจะเกิดขึ้นเมื่อมีการสร้างสแนปช็อตฐานข้อมูลถ้ามีการบันทึกทรานแซคชันจํานวนมาก หรือถ้าบันทึกธุรกรรมยังคงทํางานเป็นเวลานาน ปัญหานี้เกิดขึ้นเนื่องจากสแนปช็อตต้องเรียกใช้การกู้คืนและบันทึกธุรกรรมจะต้องย้อนกลับ

  • ประสิทธิภาพการทํางานที่ช้าเกิดขึ้นเมื่อคุณใช้ไวยากรณ์ DBCC CHECKDB เพื่อสร้างสแนปช็อตฐานข้อมูลที่ซ่อนอยู่ซึ่งต้องกู้คืนสแนปช็อตฐานข้อมูลอย่างสมบูรณ์เพื่อเรียกใช้การตรวจสอบความสอดคล้องกัน

สาเหตุ

ปัญหาเหล่านี้เกิดขึ้นเนื่องจากไฟล์บันทึกเสมือน (VLFs) ในไฟล์บันทึกทรานแซคชันอาจทําให้ประสิทธิภาพการทํางานช้าลงเมื่อSQL Serverสแกนผ่าน VLF เหล่านี้ระหว่างการดําเนินการต่อไปนี้:

  • การกู้คืนฐานข้อมูล

  • การมิเรอร์ฐานข้อมูล

  • สแนปช็อตฐานข้อมูล

  • กิจกรรมตัวอ่านบันทึกการจําลองแบบธุรกรรมฐานข้อมูล

เมื่อไฟล์บันทึกทรานแซคชันสําหรับฐานข้อมูลเพิ่มขึ้นทีละน้อยระหว่างเงื่อนไขการเติบโตที่สูงมาก VLF หลายพันถึงหลายร้อยพันไฟล์จะแสดงอยู่ภายในไฟล์บันทึกธุรกรรม (.ldf) ชุดเดียว อย่างไรก็ตามการเติบโตของบันทึกขนาดใหญ่โดยการเพิ่มขนาดใหญ่สร้าง VLF หลายตัวเท่านั้นโดยการเปรียบเทียบ ตัวอย่างเช่น หลาย VLFs อาจน้อยกว่า 100 รายการ

หมายเหตุ VLFs คือส่วนหรือส่วนที่ถูกใช้งานภายในโดยSQL Serverในแฟ้มล็อกธุรกรรม
 

การแก้ไข

ข้อมูลโปรแกรมอัปเดตสะสม

SQL Server 2008 R2


การแก้ไขสําหรับปัญหานี้ถูกนําออกใช้ครั้งแรกในการอัปเดตสะสม 6 สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับแพคเกจโปรแกรมปรับปรุงสะสมสําหรับ SQL Server 2008 R2 ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

2489376 แพคเกจโปรแกรมปรับปรุงสะสม 6 สําหรับSQL Server 2008 R2 หมายเหตุเนื่องจากรุ่นจะสะสม แต่ละการเผยแพร่การแก้ไขใหม่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่กับการเผยแพร่การแก้ไข 2008 R2 SQL Server R2 ก่อนหน้า เราขอแนะนําให้คุณพิจารณาใช้การแก้ไขรุ่นล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

981356 รุ่น SQL Server 2008 R2 ที่เผยแพร่หลังจากเผยแพร่SQL Server 2008 R2

SQL Server 2008 Service Pack 1

การแก้ไขสําหรับปัญหานี้ถูกนําออกใช้ครั้งแรกในการอัปเดตสะสม 12 สําหรับ SQL Server 2008 Service Pack 1

หมายเหตุ เนื่องจากรุ่นเป็นรุ่นสะสม การแก้ไขใหม่แต่ละรุ่นประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการเผยแพร่การแก้ไขSQL Server 2008 ก่อนหน้า Microsoft ขอแนะนําให้คุณพิจารณาใช้การแก้ไขรุ่นล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

970365 SQL Serverรุ่น 2008 ที่เผยแพร่หลังจากSQL Server 2008 Service Pack 1 มีการเผยแพร่การแก้ไขด่วนของ Microsoft SQL Server 2008 ถูกสร้างขึ้นสําหรับSQL Server Service Pack เฉพาะ คุณต้องใช้โปรแกรมแก้ไขด่วน SQL Server 2008 Service Pack 1 กับการติดตั้ง SQL Server 2008 Service Pack 1 โดยค่าเริ่มต้น โปรแกรมแก้ไขด่วนใดๆ ที่มีอยู่ในSQL Server Service Pack จะรวมอยู่ในSQL Server Service Pack ถัดไป

SQL Server 2008 Service Pack 2


การแก้ไขสําหรับปัญหานี้ถูกนําออกใช้ครั้งแรกในการอัปเดตสะสม 2 สําหรับ SQL Server 2008 Service Pack 2

หมายเหตุ เนื่องจากรุ่นเป็นรุ่นสะสม การแก้ไขใหม่แต่ละรุ่นประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการเผยแพร่การแก้ไขSQL Server 2008 ก่อนหน้า Microsoft ขอแนะนําให้คุณพิจารณาใช้การแก้ไขรุ่นล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

2402659 SQL Serverรุ่น 2008 ที่เผยแพร่หลังจากการเผยแพร่SQL Server 2008 Service Pack 2 มีการสร้างการแก้ไขด่วนของ Microsoft SQL Server 2008 สําหรับ service pack SQL Server เฉพาะ คุณต้องใช้ hotfix SQL Server 2008 Service Pack 2 กับการติดตั้ง SQL Server 2008 Service Pack 2 โดยค่าเริ่มต้น โปรแกรมแก้ไขด่วนใดๆ ที่มีอยู่ในSQL Server Service Pack จะรวมอยู่ในSQL Server Service Pack ถัดไป

SQL Server 2005 Service Pack 3

การแก้ไขสําหรับปัญหานี้ถูกนําออกใช้ครั้งแรกในการอัปเดตสะสม 13 สําหรับ SQL Server 2005 Service Pack 3

หมายเหตุ เนื่องจากรุ่นเป็นแบบสะสม การแก้ไขใหม่แต่ละรุ่นประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการเผยแพร่การแก้ไขSQL Server 2005 ก่อนหน้า Microsoft ขอแนะนําให้คุณพิจารณาใช้การแก้ไขรุ่นล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

960598 SQL Serverรุ่น 2005 ที่เผยแพร่หลังจากSQL Server 2005 Service Pack 3 มีการเผยแพร่การแก้ไขด่วนของ Microsoft SQL Server 2005 ถูกสร้างขึ้นสําหรับ service pack SQL Server เฉพาะ คุณต้องใช้โปรแกรมแก้ไขด่วน SQL Server 2005 Service Pack 3 กับการติดตั้ง SQL Server 2005 Service Pack 3 โดยค่าเริ่มต้น โปรแกรมแก้ไขด่วนใดๆ ที่มีอยู่ในSQL Server Service Pack จะรวมอยู่ในSQL Server Service Pack ถัดไป
 

SQL Server 2005 Service Pack 4

การแก้ไขสําหรับปัญหานี้ถูกนําออกใช้ครั้งแรกในการอัปเดตสะสม 1 สําหรับ SQL Server 2005 Service Pack 4

หมายเหตุ เนื่องจากรุ่นเป็นแบบสะสม การแก้ไขใหม่แต่ละรุ่นประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการเผยแพร่การแก้ไขSQL Server 2005 ก่อนหน้า Microsoft ขอแนะนําให้คุณพิจารณาใช้การแก้ไขรุ่นล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้

คุณต้องใช้โปรแกรมแก้ไขด่วน SQL Server 2005 Service Pack 4 กับการติดตั้ง SQL Server 2005 Service Pack 4 โดยค่าเริ่มต้น โปรแกรมแก้ไขด่วนใดๆ ที่มีอยู่ในSQL Server Service Pack จะรวมอยู่ในSQL Server Service Pack ถัดไป

สถานะ

Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"

วิธีแก้ไขปัญหาชั่วคราว

ติดตั้งโปรแกรมแก้ไขด่วนนี้ แล้วเริ่มระบบSQL Serverใหม่อาจปรับปรุงประสิทธิภาพการกู้คืน ตัวอย่างเช่น ประสิทธิภาพการทํางานอาจดีขึ้นสําหรับการทํางานต่อไปนี้หลังจากที่คุณติดตั้งโปรแกรมแก้ไขด่วนนี้ และเริ่มการทํางานใหม่SQL Server:

  • การกู้คืนฐานข้อมูล

  • การมิเรอร์ฐานข้อมูล

  • สแนปช็อตฐานข้อมูล

  • กิจกรรมตัวอ่านบันทึกการจําลองแบบธุรกรรมฐานข้อมูล


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

ลดปัญหาที่มีอยู่

  • รอให้การดําเนินการคืนค่าหรือการกู้คืนเสร็จสมบูรณ์

    ถ้าคุณมีฐานข้อมูลที่ไม่ได้รับการกู้คืนซึ่งกําลังประสบกับประสิทธิภาพการทํางานที่ช้าลงเมื่อคุณคืนค่าหรือกู้คืนฐานข้อมูล คุณอาจต้องรอให้การดําเนินการคืนค่าหรือการกู้คืนเสร็จสมบูรณ์ ตัวอย่างเช่น คุณอาจเห็นสถานะออฟไลน์หรือสถานะการกู้คืนใน SQL Server Management Studio (SSMS) สําหรับฐานข้อมูลที่ไม่สามารถกู้คืนได้ การหยุดSQL Serverมักจะไม่มีการบรรเทาสําหรับการกู้คืนที่ช้าและอาจใช้เวลามากขึ้นในการทําซ้ําขั้นตอนการวิเคราะห์การกู้คืนระยะทําซ้ําหรือเลิกทําขั้นตอนเดียวกัน

  • หลีกเลี่ยงการคืนค่าลําดับบันทึกทรานแซคชันที่มี VLF หลายพันรายการ

    ถ้าคุณพบประสิทธิภาพการทํางานที่ช้าในขณะที่คุณคืนค่าและกู้คืนฐานข้อมูลโดยใช้ไฟล์สํารอง คุณสามารถหลีกเลี่ยงการคืนค่าลําดับบันทึกทรานแซคชันที่มี VLFs หลายพันรายการได้ เมื่อต้องการระบุไฟล์สํารองที่มีบันทึกไฟล์บันทึกเสมือนมากที่สุด ให้ใช้คําสั่งต่อไปนี้เพื่อดูคอลัมน์ FirstLSN และ LastLSN ในไฟล์บันทึกการสํารองข้อมูล:
    RESTORE HEADERONLY FROM DISK='C:\folder\file.trn'

    คุณสามารถตัดสินใจหลีกเลี่ยงการคืนค่าไฟล์บันทึกสํารองได้ หรือคุณสามารถใช้คําสั่ง STOP AT ในคําสั่ง RESTORE เพื่อหลีกเลี่ยงส่วนที่กระจัดกระจายของบันทึกธุรกรรม ถ้าคุณไม่คืนค่าลําดับแฟ้มบันทึกทั้งหมดจนถึงจุดล่าสุดในระหว่างสถานการณ์การกู้คืนล้มเหลว ข้อมูลสูญหายเกิดขึ้นในฐานข้อมูลของคุณSQL Server การสูญหายของข้อมูลนี้เกิดขึ้นเนื่องจากไม่ได้เก็บธุรกรรมทั้งหมดไว้ ดังนั้นจึงมีการตัดสินใจแลกเปลี่ยนทางธุรกิจ คุณสามารถคืนค่าบันทึกทรานแซคชันที่กระจัดกระจายสูงได้อย่างสมบูรณ์ อย่างไรก็ตาม การดําเนินการนี้อาจใช้เวลาหลายชั่วโมง หรือคุณสามารถใช้คําสั่ง STOP AT ในการกู้คืนเพื่อหยุดการกู้คืนก่อนที่ส่วนที่กระจัดกระจายอย่างมากของบันทึก อย่างไรก็ตาม ธุรกรรมใดๆ ที่หายไปที่คุณละไว้จะสูญหายไป

    หมายเหตุ โดยไม่ต้องติดตั้งโปรแกรมแก้ไขด่วนนี้ โดยทั่วไปแล้วจะไม่มีแหล่งข้อมูลที่ปลอดภัยสําหรับการกู้คืนด่วนหลังจากที่คุณเริ่มระบบSQL Serverใหม่ SQL Serverต้องค้นหารายการของ VLFs เพื่อวิเคราะห์ไฟล์บันทึก เพื่อทําซ้ําทรานแซคชันที่เสร็จสมบูรณ์ แล้วเลิกทําทรานแซคชันที่ไม่สมบูรณ์เพื่อให้การกู้คืนฐานข้อมูลเป็นแบบออนไลน์ได้อย่างปลอดภัย คุณไม่สามารถข้ามทรานชันระหว่างการกู้คืนได้อย่างปลอดภัย

ป้องกันการเกิดขึ้นในอนาคต

  • ตั้งค่าการเพิ่มการกู้อัตโนมัติของฐานข้อมูลให้มีขนาด

    ที่เหมาะสม หากขนาดของการเพิ่มการกู้อัตโนมัติมีขนาดเล็กเกินไป จะมีไฟล์บันทึกเสมือน (VLF) จํานวนมาก และคุณอาจพบประสิทธิภาพการทํางานที่ช้าในSQL Server ถ้าขนาดของการเพิ่มขึ้นของการขยายอัตโนมัติมีขนาดใหญ่เกินไป คิวรีที่ทําให้บันทึกทรานแซคชันเพิ่มขึ้นโดยอัตโนมัติอาจต้องรอให้การขยายตัวเสร็จสิ้นเป็นเวลานาน ดังนั้น ข้อผิดพลาดการหมดเวลาอาจเกิดขึ้นในSQL Server เมื่อต้องการแก้ไขปัญหาเหล่านี้ คุณสามารถตั้งค่าขนาดของการเพิ่มการลากอัตโนมัติสําหรับฐานข้อมูลของคุณให้มีขนาดที่เหมาะสมได้

  • กําจัด VLF จํานวนมากและใช้การเติบโต

    ด้วยตนเอง ถ้า VLFs จํานวนมากอยู่ในบันทึกธุรกรรม ให้ลดขนาดของบันทึกธุรกรรม และทําให้เพิ่มขึ้นก่อนถึงจุดสูงสุดของธุรกิจเพื่อตอบสนองความต้องการโดยใช้การเติบโตด้วยตนเอง ตัวอย่างเช่น บันทึกทรานแซคชันจะเพิ่มขนาดกลับเป็นขนาดเฉลี่ยที่เหมาะสม ขนาดของบันทึกทรานแซคชันถึงความจุสูงสุด และไฟล์สํารองข้อมูลล็อกได้รับการจัดกําหนดการเป็นประจําและเป็นระยะๆ นอกจากนี้ ล็อกธุรกรรมอาจถูกตัดทอน และ VLFs สําหรับล็อกธุรกรรมสามารถนํามาใช้ใหม่ในรอบ

  • วิธีการย่อและเพิ่มบันทึกธุรกรรมด้วยตนเอง

    เมื่อต้องการแก้ไขแฟ้มบันทึกที่มี VLF มากเกินไป ให้ทําตามขั้นตอนเหล่านี้เพื่อย่อแฟ้มบันทึกและเพิ่มแฟ้มบันทึกนั้นอีกครั้งด้วยตนเอง:

    1. ถ้าฐานข้อมูลอยู่ในรูปแบบการกู้คืนแบบเต็มหรือแบบบันทึกเป็นกลุ่ม คุณต้องสํารองบันทึกทรานแซคชันเพื่ออนุญาตให้ VLFs ที่ใช้งานอยู่ถูกตัดทอนและนํากลับมาใช้ใหม่ได้ BACKUP LOG databasename to DISK='C:\folder\log_backupfile.trn'
      สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสํารองแฟ้มบันทึกธุรกรรม โดยใช้ SSMS เยี่ยมชมเว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:

      วิธีการสํารองข้อมูลไฟล์บันทึกธุรกรรมโดยใช้ SSMSสําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีสํารองข้อมูลแฟ้มบันทึกทรานแซคชันโดยใช้คําสั่ง Transact-SQL แวะไปเว็บไซต์ต่อไปนี้ของ MSDN:

      วิธีการสํารองข้อมูลแฟ้มบันทึกทรานแซคชันโดยใช้คําสั่ง Transact-SQL

    2. เมื่อต้องการกําหนดชื่อตรรกะของไฟล์ล็อกธุรกรรม ให้เรียกใช้คําสั่งใดคําสั่งหนึ่งต่อไปนี้
      ใบแจ้งยอด 1
      exec sp_helpfile Statement 2
      เลือก * จาก sys.sysfiles เพื่อลดขนาดของไฟล์บันทึกธุรกรรมให้เป็นขนาดที่ต้องการ ให้ใช้รหัสต่อไปนี้:DBCC SHRINKFILE(transactionlogicalfilename, TRUNCATEONLY)

    3. คุณสามารถเพิ่มขนาดของแฟ้มล็อกธุรกรรมให้มีขนาดที่เหมาะสมได้ เราขอแนะนําให้คุณเพิ่มขนาดของแฟ้มบันทึกทรานแซคชันให้ใหญ่ขึ้นเป็นขนาดปกติสูงสุด ดังนั้นการเพิ่มการปลูกอัตโนมัติจึงหลีกเลี่ยง เมื่อต้องการตั้งค่าขนาดของบันทึกทรานแซคชัน ให้ใช้หน้า คุณสมบัติของฐานข้อมูล ใน SSMS หรือใช้ไวยากรณ์ของฐานข้อมูล ALTER ต่อไปนี้:MODIFY FILE ( NAME = transactionlogicalfilenae, SIZE=newtotalsize MB)
      สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการเพิ่มขนาดของฐานข้อมูลใน SSMS แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:

      วิธีการเพิ่มขนาดของฐานข้อมูลใน SSMSสําหรับข้อมูลเพิ่มเติมเกี่ยวกับไวยากรณ์ ALTER DATABASE MODIFY FILE แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:

      ข้อมูลทั่วไปเกี่ยวกับไวยากรณ์ ALTER DATABASE MODIFY FILE

ข้อมูลเพิ่มเติม

คุณสามารถตรวจสอบจํานวนของส่วน VLF โดยการตรวจสอบแฟ้มบันทึกข้อผิดพลาด SQL แล้ว โดยการค้นหาหมายเลขลําดับล็อก (LSN) ในแต่ละแฟ้มสํารองข้อมูลบันทึกธุรกรรม ตัวเลขแรกก่อนสัญลักษณ์เครื่องหมายจุดคู่ใน LSN จะสอดคล้องกับจํานวนของ LSN

ตัวอย่างเช่น ตัวเลขแรกในข้อความให้ข้อมูลข้อความแรกสําหรับ LSN คือ 1 อย่างไรก็ตาม ตัวเลขแรกในข้อความแสดงข้อมูลที่สองสําหรับ LSN จะถูก100001 ในสถานการณ์นี้ มี VLF 100,000 ที่ใช้ระหว่างเวลาของข้อความให้ข้อมูลข้อความแรกและข้อความที่สองที่ให้ข้อมูล ดังนั้น บันทึกทรานแซคชันแบบแยกส่วนที่บันทึกไว้ที่มีไฟล์บันทึกเสมือน (VLF) จํานวนมากมีลักษณะดังต่อไปนี้:
 

{Log ถูกสํารองไว้ ฐานข้อมูล: mydbname วันที่สร้าง(เวลา): 2010/07/08(12:36:46), LSN แรก: 1:5068:70, LSN ล่าสุด: 1:5108:1, จํานวนอุปกรณ์การถ่ายโอนข้อมูล: 1, ข้อมูลอุปกรณ์: (FILE=1, TYPE=DISK: {'C:\folder\logbackup1.trn'}) นี่คือข้อความให้ข้อมูลเท่านั้น ไม่จําเป็นต้องดําเนินการใดๆ ของผู้ใช้

มีการสํารองข้อมูลแฟ้มบันทึกแล้ว ฐานข้อมูล: mydbname, วันที่สร้าง(เวลา): 2010/07/08(15:36:46), LSN แรก: 100001:5108:1, LSN ล่าสุด: 100002:5108:1, จํานวนอุปกรณ์การถ่ายโอนข้อมูล: 1, ข้อมูลอุปกรณ์: (FILE=2, TYPE=DISK: {'C:\folder\logbackup2.trn'}) นี่คือข้อความให้ข้อมูลเท่านั้น ไม่จําเป็นต้องดําเนินการใดๆ ของผู้ใช้}

ตารางต่อไปนี้มีข้อมูลเพิ่มเติมเกี่ยวกับผลิตภัณฑ์หรือเครื่องมือที่จะตรวจสอบเงื่อนไขที่อธิบายไว้ในส่วน "อาการ" โดยอัตโนมัติในอินสแตนซ์ของ SQL Server และในเวอร์ชันของSQL Serverที่มีการประเมินกฎ
 

ซอฟต์แวร์กฎ

ชื่อกฎ

คําอธิบายกฎ

เวอร์ชันผลิตภัณฑ์ที่ใช้ประเมินกฎ

โปรแกรมช่วยแนะนําศูนย์ระบบ

SQL Serverกับการจําลองแบบทรานแซคชัน ประสิทธิภาพของตัวแทนโปรแกรมอ่านบันทึกอาจได้รับผลกระทบเนื่องจากขนาดของบันทึกธุรกรรมหรือจํานวนของ VLF

ในโปรแกรมช่วยแนะนําอินสแตนซ์SQL Serverนี้ตรวจพบการจําลองแบบทรานแซคชันการแสดงตนที่มีจํานวน VLF หรือขนาด TLOG มากกว่ามาก ประสิทธิภาพของตัวแทนโปรแกรมอ่านบันทึกจะได้รับผลกระทบในทางลบตามขนาดของบันทึกทรานแซคชันหรือจํานวน VLF ลดขนาดบันทึกทรานแซคชันและจํานวน VLF เพื่อปรับปรุงประสิทธิภาพของตัวแทนตัวอ่านบันทึก

SQL Server 2008

SQL Server 2008 R2

SQL Server 2012



 

อ้างอิง

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับสถาปัตยกรรมทางกายภาพของบันทึกธุรกรรม แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:

ข้อมูลทั่วไปเกี่ยวกับสถาปัตยกรรมทางกายภาพของบันทึก

ธุรกรรม สําหรับข้อมูลเพิ่มเติมเกี่ยวกับหมายเลขลําดับแฟ้มบันทึก (LSN) แวะไปที่เว็บไซต์ต่อไปนี้ของ MSDN:

ข้อมูลทั่วไปเกี่ยวกับหมายเลข

ลําดับล็อก สําหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อผิดพลาด 1413 เมื่อเริ่มการมิเรอร์ฐานข้อมูล แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:

ข้อมูลทั่วไปเกี่ยวกับข้อผิดพลาด 1413 เมื่อการมิเรอร์ฐานข้อมูลเริ่มขึ้น

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่โครงสร้างไฟล์บันทึกสามารถส่งผลกระทบต่อเวลาการกู้คืนฐานข้อมูล แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:

โครงสร้างไฟล์บันทึกอาจส่งผลต่อเวลา

ในการกู้คืนฐานข้อมูลอย่างไร สําหรับข้อมูลเพิ่มเติมเกี่ยวกับบันทึกทรานแซคชัน VLFs แวะไปที่เว็บไซต์ต่อไปนี้ของ MSDN:

ข้อมูลทั่วไปเกี่ยวกับไฟล์

ล็อกธุรกรรม สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้างสแนปช็อตฐานข้อมูล แวะไปที่เว็บไซต์ MSDN ต่อไปนี้:

วิธีสร้างสแนปช็อตฐานข้อมูลสําหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบการให้บริการแบบเพิ่มเติมสําหรับSQL Server ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

935897 รูปแบบการให้บริการแบบเพิ่มเติมจะพร้อมใช้งานจากทีมSQL Serverเพื่อส่งการแก้ไขด่วนสําหรับปัญหาที่รายงานสําหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบการตั้งชื่อสําหรับการอัปเดตSQL Server ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

822499รูปแบบการตั้งชื่อใหม่สําหรับแพคเกจอัปเดตซอฟต์แวร์ของ Microsoft SQL Serverสําหรับข้อมูลเพิ่มเติมเกี่ยวกับคําศัพท์เฉพาะของการอัปเดตซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:

824684 คําอธิบายเกี่ยวกับคําศัพท์มาตรฐานที่ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์ของ Microsoft

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพภาษาเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ
เมื่อกดส่ง คำติชมของคุณจะถูกใช้เพื่อปรับปรุงผลิตภัณฑ์และบริการของ Microsoft ผู้ดูแลระบบ IT ของคุณจะสามารถรวบรวมข้อมูลนี้ได้ นโยบายความเป็นส่วนตัว

ขอบคุณสำหรับคำติชมของคุณ!

×