ทำไมฉันถึงต้องใช้ฐานข้อมูลออฟไลน์


15

สำหรับสิ่งที่เหตุผลและในสิ่งที่สถานการณ์ที่คุณจะใช้ "Take ออฟไลน์" / ALTER DATABASE dbName SET OFFLINEคุณลักษณะ

คุณสามารถทำงานอะไรได้บ้างกับฐานข้อมูลออฟไลน์ คุณสามารถทำงานอะไรได้บ้างกับฐานข้อมูลออฟไลน์

คำตอบ:


16

คุณสามารถย้ายไฟล์ MDF ไปยังเซิร์ฟเวอร์อื่นเพื่อให้ออนไลน์ได้


4
+1 หรืออื่นไดรฟ์ / โฟลเดอร์ / SAN ...
คริส S

เป็นสิ่งเดียวที่ใช้สำหรับ "ใช้งานออฟไลน์" หรือไม่?
Greg B

5
ไม่ฉันสามารถคิดถึงเหตุผลอื่นได้ ลองนึกภาพว่าคุณมีฐานข้อมูลหลายฐานสำหรับหลายแอปพลิเคชัน แอปพลิเคชันเหล่านี้อย่างใดอย่างหนึ่งกำลังรับการอัปเกรดแอปพลิเคชัน Front-End (เว็บแอปไคลเอนต์ผู้รู้) คุณต้องการปิดการใช้งานการเข้าถึงฐานข้อมูลโดยทุกคนในระหว่างการอัพเกรด แต่คุณไม่ต้องการทำให้เซิร์ฟเวอร์ทั้งหมดล่ม เพราะฐานข้อมูลอื่น ๆ นั่นอาจเป็นเหตุผลที่นำมาออฟไลน์ ฉันแน่ใจว่าจินตนาการของคุณอาจมาพร้อมกับเหตุผลอื่น ๆ ด้วย
mfinni

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

2
Greg B - ฉันบอกเป็นการอัปเกรด front-end ไม่ใช่ DB เอง ในสถานการณ์ที่ฉันอธิบาย DB ถูกทิ้งไว้ไม่เปลี่ยนแปลง จะต้องดำเนินการออฟไลน์เพื่อให้แน่ใจว่าไม่มีใครเข้าถึงได้ในระหว่างการเปลี่ยนแปลง
mfinni

18

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

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

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

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


2
ผมชอบความคิดของการออฟไลน์ก่อนที่จะมีการลบ
เกร็กข

8
เหมือนกัน ฉันมีฐานข้อมูลสี่พัน ish ในสภาพแวดล้อมก่อนการผลิตของเรา บางครั้งก็ยากที่จะรู้ว่าใครเป็นเจ้าของอะไร การออฟไลน์และรอการซัดทอดเป็นบางครั้งตัวเลือกเท่านั้น
Michael Green

6

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


2
แก้ไข. ถ้าคุณต้องการที่จะทำอะไรกับฐานข้อมูลได้ดีกว่าคุณควรเก็บไว้ในโหมดผู้ใช้คนเดียว จากนั้นคุณยัง จำกัด การเข้าถึง แต่สามารถทำได้มากขึ้น
Sean Howat

คุณไม่สามารถเปลี่ยนชื่อมันได้!
Dima Fomin

0

เหตุผลที่ครอบคลุมของฉันสิ่งที่ฉันต้องขายให้กับ DBA บ่อยกว่าที่ฉันต้องการแจกแจง ...

"SAN ต้องการการซ่อมแซม ... และไม่ฉันไม่สามารถเปลี่ยนไดรฟ์ hot-back ได้อย่างง่ายดาย backplane / ตัวควบคุมเป็นความผิดพลาด"

อินสแตนซ์ DB ทำงานได้ไม่ดีเมื่อดิสก์ของพวกเขาหายไป

ดังนั้นฉันปิดอินสแตนซ์ SQL ลงก่อนที่จะออฟไลน์ SAN จากนั้นนำกลับมาทีละครั้งเพื่อให้พวกเขาไม่ได้แข่งขันทรัพยากร - อินสแตนซ์แรกขึ้นใช้ทรัพยากรคลัสเตอร์ทั้งหมดและกลายเป็นโหนดฐานข้อมูล Active เป็นโหนดแบบพาสซีฟ


-3

มีหลายสาเหตุที่คุณต้องทำเช่นนี้ ..

ยกตัวอย่างเช่น

consider changing or upgrading the actual database program/binary...
consider changing or upgrading the schema or tables..
consider changing or upgrading index's..

จุดที่สำคัญที่สุด ..

Is taking a backup.. to get a perfect snapshot in time.. 

(ในบางฐานข้อมูลคุณเพียงแค่สร้างการล็อคในทุกตาราง)


+1 หรือ DBMS ที่เก่ากว่าสำหรับการจัดเรียงข้อมูลหรือลดขนาดฐานข้อมูล
Chris S

1
เรื่อง: "การเปลี่ยนหรืออัพเกรด schema" จากหนังสือออนไลน์ "ออฟไลน์ฐานข้อมูลปิดปิดอย่างสมบูรณ์และทำเครื่องหมายออฟไลน์ฐานข้อมูลไม่สามารถแก้ไขได้ในขณะที่ออฟไลน์อยู่" คุณสามารถอัพเกรด schema ในสถานการณ์นี้ได้อย่างไร?
Greg B

ขออภัย .. ฉันกำลังอ้างถึงการเปลี่ยนแปลงฐานข้อมูลที่ไม่ได้ใช้งาน .. ฉันเป็นผู้ติดตาม MySQL ฉันคิดว่าการอัปเกรดจะเกิดขึ้นในฐานข้อมูลที่มีการทำเครื่องหมายออฟไลน์ดังนั้นจึงไม่มีปัญหาใด ๆ ที่เกิดขึ้นพร้อมกันนอกเหนือจากการเปลี่ยนแปลงที่ต้องการ บางทีเราก็สามารถละทิ้งเรื่องนี้ไว้ได้ .. : D
Arenstar

2
ฐานข้อมูลจริงรองรับการสำรองข้อมูลจริง คุณไม่จำเป็นต้องรับสิ่งใด ๆ แต่เป็นของเล่นแห่งการทำสำรองข้อมูลที่สมบูรณ์แบบในเวลาที่สมบูรณ์แบบ db ที่ต้องการล็อคหรือกลไกที่โง่อื่น ๆ คือของเล่น จริงๆ. ฐานข้อมูลที่สำคัญทั้งหมดไม่มีปัญหากับการสำรองข้อมูลเต็มรูปแบบสอดคล้องกันในขณะที่ใช้งานหนัก
TomTom
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.