สารบัญ:

อะไรทำให้เกิดการหยุดชะงักของฐานข้อมูล
อะไรทำให้เกิดการหยุดชะงักของฐานข้อมูล

วีดีโอ: อะไรทำให้เกิดการหยุดชะงักของฐานข้อมูล

วีดีโอ: อะไรทำให้เกิดการหยุดชะงักของฐานข้อมูล
วีดีโอ: สอนพื้นฐาน SQL ทั้งหมดแบบจบในคลิปเดียว !! 🔥 2024, อาจ
Anonim

NS การหยุดชะงัก เกิดขึ้นเมื่อธุรกรรมสองรายการ (หรือมากกว่า) บล็อกกันโดยล็อคทรัพยากรที่แต่ละธุรกรรมต้องการด้วย ตัวอย่างเช่น รายการ 1 ล็อคตาราง A คนส่วนใหญ่จะเขียนว่า การหยุดชะงัก ไม่สามารถหลีกเลี่ยงได้ในผู้ใช้หลายคน ฐานข้อมูล.

ในที่นี้การหยุดชะงักในฐานข้อมูลคืออะไร?

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

รู้ยัง การเลือกสามารถทำให้เกิดการหยุดชะงักได้หรือไม่? 2 คำตอบ การหยุดชะงัก เกิดขึ้นเมื่อแบบสอบถามหนึ่งได้รับล็อกบนวัตถุ (แถว หน้าข้อมูล ขอบเขต ตาราง ฯลฯ) และทรัพยากรอื่นพยายามเข้าถึง หน่วยที่เล็กที่สุดใน SQL Server คือหน้าข้อมูลและ SQL จะล็อกหน้าไว้ขณะทำงาน ใช่ เป็นไปได้ว่าสอง เลือก คำแถลง สามารถ สร้าง การหยุดชะงัก.

นอกจากนี้ เราจะป้องกันการชะงักงันในฐานข้อมูลได้อย่างไร

เคล็ดลับในการหลีกเลี่ยงภาวะชะงักงัน

  1. ตรวจสอบให้แน่ใจว่าการออกแบบฐานข้อมูลถูกทำให้เป็นมาตรฐานอย่างเหมาะสม
  2. พัฒนาแอปพลิเคชันเพื่อเข้าถึงวัตถุเซิร์ฟเวอร์ในลำดับเดียวกันในแต่ละครั้ง
  3. ไม่อนุญาตให้ผู้ใช้ป้อนข้อมูลระหว่างการทำธุรกรรม
  4. หลีกเลี่ยงเคอร์เซอร์
  5. ทำธุรกรรมให้สั้นที่สุด

คุณจะแก้ไขการหยุดชะงักได้อย่างไร?

นักพัฒนาที่ชาญฉลาดต้องทำตามขั้นตอนต่อไปนี้เพื่อกู้คืนจากการชะงักงัน:

  1. ตรวจสอบข้อผิดพลาดหมายเลข 1205 เมื่อมีการส่งข้อยกเว้น
  2. หยุดแอปพลิเคชันชั่วครู่เพื่อให้เวลาการสืบค้นอื่นทำธุรกรรมให้เสร็จสิ้นและปลดล็อคที่ได้มา
  3. ส่งแบบสอบถามซึ่งถูกย้อนกลับโดย SQL Server