Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

ระดับความเข้ากันได้ของฐานข้อมูล Microsoft SQL Server

ระดับความเข้ากันได้ของฐานข้อมูล หนึ่งในการตั้งค่าระดับฐานข้อมูล ส่งผลต่อการทำงานของฐานข้อมูล Microsoft® SQL Server® เวอร์ชันใหม่แต่ละเวอร์ชันมีคุณลักษณะใหม่ๆ มากมาย ซึ่งส่วนใหญ่ต้องใช้คำหลักใหม่และเปลี่ยนลักษณะการทำงานบางอย่างที่มีอยู่ในเวอร์ชันก่อนหน้า เพื่อให้ความเข้ากันได้แบบย้อนหลังสูงสุด Microsoft ช่วยให้เราสามารถกำหนดระดับความเข้ากันได้ตามความต้องการของเรา

ค่าเริ่มต้นของระดับความเข้ากันได้ของฐานข้อมูล

ตามค่าดีฟอลต์ ทุกฐานข้อมูลสืบทอดระดับความเข้ากันได้ของรุ่นฐานข้อมูลที่สร้างฐานข้อมูลนั้น ตัวอย่างเช่น ระดับความเข้ากันได้ของฐานข้อมูล SQL Server 2012 มีค่าเริ่มต้นเป็น 110 เว้นแต่คุณจะเปลี่ยน

ระดับความเข้ากันได้หลังจากการคืนค่า

เมื่อคุณกู้คืนข้อมูลสำรองของฐานข้อมูลที่ใช้ SQL เวอร์ชันเก่า ระดับความเข้ากันได้ของฐานข้อมูลจะยังคงเหมือนเดิมบนอินสแตนซ์ที่คุณใช้สำรองข้อมูล เว้นแต่ระดับความเข้ากันได้ของแหล่งที่มาจะต่ำกว่าระดับขั้นต่ำที่รองรับ ในกรณีดังกล่าว ระดับความเข้ากันได้ของฐานข้อมูลจะเปลี่ยนเป็นเวอร์ชันต่ำสุดที่รองรับ ตัวอย่างเช่น หากเรากู้คืนข้อมูลสำรองฐานข้อมูล SQL Server2005 เป็น SQL Server 2017 ระดับความเข้ากันได้ของฐานข้อมูลที่กู้คืนจะถูกตั้งค่าเป็น 100 เนื่องจากเป็นระดับ SQL 2017 ขั้นต่ำที่รองรับ

ระดับความเข้ากันได้หลังจากการอัปเกรด

ระดับความเข้ากันได้ของฐานข้อมูล tempdb รุ่น msdb และทรัพยากรถูกกำหนดเป็นระดับความเข้ากันได้ปัจจุบันหลังจากการอัปเกรด ฐานข้อมูลระบบหลักยังคงระดับความเข้ากันได้ที่มีก่อนการอัพเกรด

กำหนดระดับความเข้ากันได้

หากต้องการกำหนดระดับความเข้ากันได้ในปัจจุบัน ให้สอบถาม ระดับความเข้ากันได้ คอลัมน์ของ sys.databases .

หากต้องการเปลี่ยนเป็นระดับความเข้ากันได้อื่น ให้ใช้ ALTER DATABASE คำสั่งดังแสดงในตัวอย่างต่อไปนี้:

Use Master
Go
ALTER DATABASE <database name>SET COMPATIBILITY_LEVEL = <compatibility-level>;

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

หากต้องการเปลี่ยนระดับความเข้ากันได้กับตัวช่วยสร้าง ให้คลิกขวาที่ตัวเลือก ฐานข้อมูล –> คุณสมบัติ–> –> ระดับความเข้ากันได้ของฐานข้อมูล ดังแสดงในภาพต่อไปนี้:

ระดับความเข้ากันได้ของฐานข้อมูล Microsoft SQL Server (/article/uploadfiles/202207/2022070812110977.png)

ระดับเริ่มต้นและรองรับความเข้ากันได้

ตารางต่อไปนี้แสดงเวอร์ชันของ SQL Server พร้อมความเข้ากันได้เริ่มต้นและรายการระดับความเข้ากันได้ที่รองรับ:

ระดับความเข้ากันได้ของฐานข้อมูล Microsoft SQL Server (/article/uploadfiles/202207/2022070812110959.png)

ที่มา :https://www.sqlskills.com/blogs/glenn/database-compatibility-level-in-sql-server/

ระดับความเข้ากันได้ของฐานข้อมูลและประสิทธิภาพ

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

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

ตั้งแต่ SQL Server 2014 ฐานข้อมูลใดๆ ที่ทำงานที่ระดับความเข้ากันได้ 120 หรือสูงกว่าสามารถใช้ ค่าประมาณจำนวนสมาชิก ใหม่ การทำงาน. การประมาณจำนวนนับเป็นตรรกะที่เกิดขึ้นเพื่อกำหนดวิธีที่ SQL Server ดำเนินการสืบค้น ตามต้นทุนโดยประมาณ การประมาณค่าคำนวณโดยใช้อินพุตจากสถิติที่เกี่ยวข้องกับออบเจ็กต์ที่เกี่ยวข้องกับคิวรีนั้น ในทางปฏิบัติ ที่ระดับสูง การประมาณการจำนวนนับเป็นการประมาณการจำนวนแถวที่รวมกันภายในข้อมูลเกี่ยวกับการกระจายของค่า การนับค่าที่แตกต่างกัน และการนับซ้ำที่มีอยู่ในตารางและวัตถุที่อ้างอิงในแบบสอบถาม การได้รับค่าประมาณเหล่านี้ที่ไม่ถูกต้องอาจนำไปสู่ดิสก์ที่ไม่จำเป็น I /O เนื่องจากการจัดสรรหน่วยความจำไม่เพียงพอ (เช่น TempDB รั่วไหล) หรือการเลือกการดำเนินการตามแผนแอสเรียลเหนือการดำเนินการตามแผนคู่ขนาน เพื่อระบุความเป็นไปได้สองสามอย่าง ฉันวางแผนที่จะหารือเพิ่มเติมเกี่ยวกับการประมาณการคาร์ดินัลลิตี้ในโพสต์บล็อกถัดไปของฉัน

ผลกระทบของการเปลี่ยนระดับความเข้ากันได้

การเปลี่ยนระดับความเข้ากันได้จะบอกฐานข้อมูลให้เปลี่ยนชุดคุณลักษณะ กล่าวคือ คุณลักษณะบางอย่างถูกเพิ่ม และในขณะเดียวกัน คุณลักษณะเก่าบางอย่างจะถูกลบออก ตัวอย่างเช่น FOR BROWSE ไม่อนุญาตให้ใช้คำสั่ง INSERT และ SELECT INTO คำสั่งที่ระดับความเข้ากันได้ 100 และอนุญาตแต่ละเว้นความเข้ากันได้ระดับ 90 หากแอปพลิเคชันของคุณใช้คุณลักษณะนี้ การเปลี่ยนแปลงนี้อาจนำเสนอผลลัพธ์ที่ไม่คาดคิด

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

บทสรุป

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

หากคุณอัปเกรดฐานข้อมูลโดยการย้ายฐานข้อมูลไปยังเซิร์ฟเวอร์ที่มีเวอร์ชันที่สูงกว่าหรือโดยการอัปเกรดอินสแตนซ์ ระดับความเข้ากันได้จะยังคงเหมือนเดิมตราบเท่าที่ระดับนั้นได้รับการสนับสนุน

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

ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม

เพิ่มประสิทธิภาพสภาพแวดล้อมของคุณด้วยการดูแลระบบ การจัดการ และการกำหนดค่าจากผู้เชี่ยวชาญ

บริการแอปพลิเคชันของ Rackspace(RAS) ผู้เชี่ยวชาญจะให้บริการแบบมืออาชีพและที่มีการจัดการในแอปพลิเคชันที่หลากหลาย:

  • แพลตฟอร์มอีคอมเมิร์ซและประสบการณ์ดิจิทัล
  • การวางแผนทรัพยากรองค์กร (ERP)
  • ระบบธุรกิจอัจฉริยะ
  • การจัดการลูกค้าสัมพันธ์ของ Salesforce (CRM)
  • ฐานข้อมูล
  • อีเมลโฮสติ้งและประสิทธิภาพการทำงาน

เราจัดส่ง:

  • ความเชี่ยวชาญที่เป็นกลาง :เราลดความซับซ้อนและเป็นแนวทางในการสร้างสรรค์สิ่งใหม่ของคุณ โดยมุ่งเน้นที่ความสามารถที่มอบคุณค่าในทันที
  • ประสบการณ์สุดคลั่ง ™:เรารวมกระบวนการก่อน เทคโนโลยีที่สอง®แนวทางพร้อมการสนับสนุนทางเทคนิคเฉพาะเพื่อมอบโซลูชันที่ครอบคลุม
  • ผลงานที่ยอดเยี่ยม :เราใช้ประสบการณ์ระบบคลาวด์ที่ครอบคลุมเพื่อช่วยคุณเลือกและปรับใช้เทคโนโลยีที่เหมาะสมบนระบบคลาวด์ที่เหมาะสม
  • ส่งไว :เราพบคุณในที่ที่คุณอยู่ในการเดินทางของคุณและปรับความสำเร็จของเราไปพร้อมกับคุณ

แชทเลยเพื่อเริ่มต้น