ความแตกต่างระหว่างฐานข้อมูลและอินสแตนซ์

Anonim

Database vs Instance

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

อินสแตนซ์คืออะไร?

อินสแตนซ์คือชุดของกระบวนการต่างๆที่ทำงานอยู่ด้านบนของระบบปฏิบัติการและหน่วยความจำที่เกี่ยวข้องกับการจัดเก็บข้อมูล อินสแตนซ์คืออินเทอร์เฟซระหว่างผู้ใช้และฐานข้อมูล กระบวนการที่สามารถสื่อสารกับลูกค้าและเข้าถึงฐานข้อมูลได้โดยอินสแตนซ์ กระบวนการเหล่านี้เป็นกระบวนการเบื้องหลังและไม่สามารถรักษาหลักการ ACID (Atomicity, Consistency, Isolation และ Durability) ในฐานข้อมูลได้ ดังนั้นอินสแตนซ์ยังใช้ส่วนประกอบอื่น ๆ อีกเช่นแคชหน่วยความจำและบัฟเฟอร์ โดยเฉพาะอย่างยิ่งอินสแตนซ์ประกอบด้วยสามส่วน พวกเขาเป็น SGA (ระบบ Global Area), PGA (Program Global Area) และกระบวนการพื้นหลัง SGA เป็นโครงสร้างหน่วยความจำที่ใช้ร่วมกันชั่วคราวซึ่งมีช่วงชีวิตของการเริ่มต้นระบบเพื่อเริ่มต้นระบบดังกล่าว

ฐานข้อมูล

ฐานข้อมูล Oracle หมายถึงการจัดเก็บข้อมูลจริงของ Oracle RDBMS ประกอบด้วยสามส่วนหลัก ไฟล์เหล่านี้เป็นไฟล์ควบคุมไฟล์ทำซ้ำและไฟล์ข้อมูล อาจมีไฟล์รหัสผ่านในฐานข้อมูล แฟ้มควบคุมติดตามแฟ้มข้อมูลทั้งหมดและทำซ้ำแฟ้ม นอกจากนี้ยังช่วยรักษาความสมบูรณ์ของฐานข้อมูลด้วยการติดตามหมายเลขเปลี่ยนระบบ (SCN), timestamps และข้อมูลสำคัญอื่น ๆ เช่นข้อมูลสำรอง / กู้คืน ไฟล์ข้อมูลเก็บข้อมูลจริง ในขณะที่สร้างฐานข้อมูลจะมีการสร้างไฟล์ข้อมูลอย่างน้อยสองไฟล์ ไฟล์เหล่านี้ถูกมองโดยร่างกายโดย DBA (Database Administrator) สามารถดำเนินการไฟล์เช่นการเปลี่ยนชื่อการปรับขนาดการเพิ่มการย้ายหรือการวางบนไฟล์ข้อมูล ทำซ้ำแฟ้มบันทึก (หรือที่เรียกว่า online redo logs) เก็บข้อมูลเกี่ยวกับการเปลี่ยนแปลงฐานข้อมูลด้วยข้อมูลตามลำดับเหตุการณ์ ข้อมูลนี้เป็นสิ่งที่จำเป็นในกรณีที่ผู้ใช้ต้องการทำใหม่ทั้งหมดหรือบางส่วนของการปรับเปลี่ยนในฐานข้อมูล เพื่อให้อินสแตนซ์สามารถจัดการกับข้อมูลของฐานข้อมูลได้ควรเปิดก่อน อินสแตนซ์สามารถเปิดฐานข้อมูลเดียวได้ อย่างไรก็ตามฐานข้อมูลสามารถเปิดได้หลายอินสแตนซ์

ความแตกต่างระหว่าง Database และ Instance คืออะไร?

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