Microsoft แจกจ่ายการแก้ไข Microsoft SQL Server 2008 และ Microsoft SQL Server 2008 R2 เป็นไฟล์เดียวที่สามารถดาวน์โหลดได้ เนื่องจากการแก้ไขเป็นแบบสะสม การเผยแพร่ใหม่แต่ละรายการจะมีโปรแกรมแก้ไขด่วนและการแก้ไขความปลอดภัยทั้งหมดที่รวมอยู่ในการแก้ไข SQL Server 2008 หรือ SQL Server 2008 R2 รุ่นก่อนหน้า
อาการ
ลองทำตามสถานการณ์ต่อไปนี้:
- คุณใช้การเข้ารหัสลับข้อมูลแบบโปร่งใสบนฐานข้อมูลใน SQL Server 2008 หรือ Microsoft SQL Server 2008 R2
- คุณปิดใช้งานการเข้ารหัสลับสําหรับฐานข้อมูล
- คุณจะสํารองฐานข้อมูลทันทีหลังจากที่คุณปิดใช้งานการเข้ารหัสลับ
- คุณพยายามคืนค่าฐานข้อมูลบนอินสแตนซ์อื่นของ SQL Server โดยใช้การสํารองข้อมูล
ในสถานการณ์สมมตินี้ การดําเนินการคืนค่าล้มเหลว และคุณได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกับต่อไปนี้:
หมายเหตุ
System.Data.SqlClient.SqlError: ไฟล์ "<ชื่อฐานข้อมูล>_log" ไม่สามารถเตรียมใช้งานอย่างถูกต้อง ตรวจสอบบันทึกข้อผิดพลาดเพื่อดูรายละเอียดเพิ่มเติม (Microsoft.SqlServer.Smo)
อย่างไรก็ตาม บันทึกข้อผิดพลาดไม่มีรายละเอียด
ถ้าคุณเอาคีย์การเข้ารหัสลับสําหรับฐานข้อมูลออกก่อนที่คุณจะสํารองฐานข้อมูล คุณจะได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้เมื่อคุณพยายามคืนค่าฐานข้อมูล:
หมายเหตุ
System.Data.SqlClient.SqlError: ไม่พบใบรับรองเซิร์ฟเวอร์ที่มีลายนิ้วมือ '0xCB62FF76463A6BF86E8F769B541BA6483AFC2FF2' (Microsoft.SqlServer.Smo)
การแก้ปัญหา
ข้อมูลการอัปเดตสะสม
SQL Server 2008 Service Pack 1
การแก้ไขสําหรับปัญหานี้ถูกปล่อยออกมาครั้งแรกในการอัปเดตสะสม 10 สําหรับ SQL Server 2008 Service Pack 1 สําหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงสะสมนี้ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
2279604 แพคเกจการปรับปรุงสะสม 10 สําหรับ SQL Server 2008 Service Pack 1 หมายเหตุเนื่องจากรุ่นนี้เป็นแบบสะสม การแก้ไขใหม่แต่ละรุ่นจะมีโปรแกรมแก้ไขด่วนและการแก้ไขความปลอดภัยทั้งหมดที่รวมอยู่ในการแก้ไขของ SQL Server 2008 รุ่นก่อนหน้า Microsoft ขอแนะนําให้คุณพิจารณาใช้การแก้ไขล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สําหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
970365 SQL Server 2008 builds ที่วางจําหน่ายภายหลัง 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 ตามค่าเริ่มต้น โปรแกรมแก้ไขด่วนใดๆ ที่มีอยู่ใน Service Pack ของ SQL Server จะรวมอยู่ใน SQL Server Service Pack รุ่นถัดไป
SQL Server 2008 Service Pack 2
การแก้ไขปัญหานี้เปิดตัวครั้งแรกในการอัปเดตสะสม 1 สําหรับ SQL Server 2008 Service Pack 2 สําหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงสะสมนี้ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
2289254 การปรับปรุงสะสม 1 สําหรับ SQL Server 2008 Service Pack 2 หมายเหตุ เนื่องจากรุ่นนี้เป็นแบบสะสม การแก้ไขใหม่ๆ ที่เผยแพร่ใหม่แต่ละรายการจะมีโปรแกรมแก้ไขด่วนและการแก้ไขความปลอดภัยทั้งหมดที่รวมอยู่ในการแก้ไขของ SQL Server 2008 รุ่นก่อนหน้า เราขอแนะนําให้คุณพิจารณาใช้การแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ไปใช้ สําหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
2402659 รุ่น SQL Server 2008 ที่วางจําหน่ายภายหลัง SQL Server 2008 Service Pack 2
SQL Server 2008 R2
การแก้ไขสําหรับปัญหานี้เผยแพร่ครั้งแรกในการอัปเดตสะสม 4 สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับแพคเกจโปรแกรมปรับปรุงสะสมสําหรับ SQL Server 2008 R2 นี้ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
2345451 แพคเกจการปรับปรุงสะสม 4 สําหรับ SQL Server 2008 R2 หมายเหตุ เนื่องจากรุ่นนี้เป็นแบบสะสม การแก้ไขใหม่แต่ละรุ่นจะมีโปรแกรมแก้ไขด่วนและการแก้ไขความปลอดภัยทั้งหมดที่รวมอยู่ในการแก้ไข SQL Server 2008 R2 ก่อนหน้านี้ เราขอแนะนําให้คุณพิจารณาใช้การแก้ไขล่าสุดที่มีโปรแกรมแก้ไขด่วนนี้ไปใช้ สําหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
981356 รุ่น SQL Server 2008 R2 ที่วางจําหน่ายภายหลัง SQL Server 2008 R2
สถานะ
Microsoft ได้ยืนยันว่านี่เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ที่แสดงไว้ในส่วน "นำไปใช้กับ"
ขั้นตอนในการจําลองปัญหาให้เกิดขึ้นอีกครั้ง
สร้างมาสเตอร์คีย์ ต่อไปนี้เป็นตัวอย่างของรหัสที่สร้างคีย์หลัก:
use master Create Master Key encryption by password = 'Password01!'; goสร้างหรือรับใบรับรองที่ได้รับการป้องกันโดยคีย์หลัก ต่อไปนี้เป็นตัวอย่างของรหัสที่สร้างใบรับรองที่ได้รับการป้องกัน โดยคีย์หลัก:
create certificate cert_testDB_encryptDEK authorization dbo with subject='Certificate to encrypt the DEK of testDB'สร้างฐานข้อมูลใหม่ สร้างคีย์การเข้ารหัสลับฐานข้อมูล แล้วปกป้องคีย์ด้วยใบรับรอง ต่อไปนี้เป็นตัวอย่างของโค้ดที่สร้างฐานข้อมูลใหม่ ที่สร้างคีย์การเข้ารหัสลับฐานข้อมูล แล้วป้องกันคีย์โดยใช้ใบรับรอง:
create Database testDB use testDB Create database encryption key with algorithm=AES_128 encryption by server certificate cert_testDB_encryptDEKตั้งค่าฐานข้อมูลให้ใช้การเข้ารหัสลับ ต่อไปนี้เป็นตัวอย่างของโค้ดที่ตั้งค่าฐานข้อมูลให้ใช้การเข้ารหัสลับ:
Alter database testDB set encryption onปิดใช้งานการเข้ารหัสลับสําหรับฐานข้อมูล ต่อไปนี้เป็นตัวอย่างของรหัสที่ปิดใช้งานการเข้ารหัสลับสําหรับฐานข้อมูล:
Alter database testDB set encryption offสํารองฐานข้อมูล จากนั้นคืนค่าข้อมูลสํารองใน SQL Server เวอร์ชันอื่น
การอ้างอิง
สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการเข้ารหัสลับข้อมูลแบบโปร่งใส (TDE) โปรดเยี่ยมชมเว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
ข้อมูลทั่วไปเกี่ยวกับ TDE สําหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบการให้บริการที่เพิ่มขึ้นสําหรับ SQL Server ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
935897 แบบจําลองการให้บริการที่เพื่มขึ้นมีไว้ให้สําหรับทีมงาน SQL Server เพื่อจัดเตรียมโปรแกรมแก้ไขสําหรับปัญหาที่มีการรายงาน
สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งชื่อ Schema สําหรับการอัปเดต SQL Server ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
822499 รูปแบบการตั้งชื่อใหม่สําหรับชุดโปรแกรมอัปเดตซอฟต์แวร์ Microsoft SQL Server สําหรับข้อมูลเพิ่มเติมเกี่ยวกับคําศัพท์ของการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
824684 คําอธิบายเกี่ยวกับคําศัพท์มาตรฐานที่ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์ของ Microsoft