มีวิธีการใดบ้างสำหรับจัดการการจัดการการเปลี่ยนแปลงฐานข้อมูล [ปิด]


9

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



1
@Jeff O เธรดนี้คุณแนะนำให้จัดการกับเนื้อหาที่เป็นเวอร์ชันมากกว่าการกำหนดเวอร์ชันของโครงสร้างฐานข้อมูลซึ่งเป็นสิ่งที่ฉันต้องการติดตาม ขอบคุณสำหรับคำแนะนำ!
Kenneth

คำตอบ:


9

เค. สก็อตต์อัลเลนเขียนบทความบล็อกยอดเยี่ยมเกี่ยวกับเรื่องนี้เมื่อไม่กี่ปีที่ผ่านมา พวกเขาอาจ "เก่า" ในแง่อินเทอร์เน็ต แต่วิธีการแก้ปัญหาของเขายังดีมาก

  1. กฎสามข้อสำหรับงานฐานข้อมูล
  2. พื้นฐาน
  3. เปลี่ยนสคริปต์
  4. มุมมองขั้นตอนการจัดเก็บและไม่ชอบ
  5. การแตกแขนงและการผสาน

3

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

ฉันใช้Migrator.Netสำหรับบางโครงการ ฉันสร้างคลาสสำหรับแต่ละเซ็ตการแก้ไขและเฟรมเวิร์กให้วิธีง่ายๆในการดำเนินการเปลี่ยนแปลงกับฐานข้อมูล ฉันยังสามารถเรียกใช้การเปลี่ยนแปลงไปข้างหน้าและข้างหลังได้หากฉันใช้รหัสตรรกะสำหรับการลดระดับเช่นเดียวกับการอัปเกรด

จากนั้นเราจัดการรหัสการโยกย้ายใน VCS ของเราเหมือนกับรหัสอื่น ๆ


1

สำรองข้อมูลทุกคืนแน่นอน (อย่างน้อย) .. เพราะมันไม่ใช่แค่โครงสร้างฐานข้อมูลที่คุณใส่ใจ

คุณมีหลายทางเลือก:

1) ให้สคริปต์การแก้ไขของคุณในการควบคุมแหล่งที่มา

2) หลังจากการเปลี่ยนแปลง db แต่ละครั้งจะสร้างสคริปต์ Db .. และเก็บไว้ในตัวควบคุมแหล่งที่มาพร้อมกับการสำรองฐานข้อมูลในเวลาเดียวกัน วิธีนี้คุณสามารถทำการเปรียบเทียบกับไฟล์สคริปต์ที่สร้าง

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