سؤال

أنا أعمل على بعض التغييرات المخطط قاعدة بيانات موجودة.

كنت احتياطيا قاعدة البيانات للحصول على ديف نسخ و جعلت من التغييرات.وسوف يكون خلق لفة واحدة سيناريو ترحيل التغييرات على آلة الإنتاج في عملية واحدة.

هل هناك أفضل الممارسات لإنشاء التراجع النصي يغلف نشر الموضوع المطروح?قبل كتبت ثم باليد باستخدام النمط التالي:

  • قطرة جديدة من القيود و الفهارس
  • تغيير الجداول لإزالة الأعمدة الجديدة
  • قطرة إضافة الجداول
  • ارتكاب الصفقة

هل هناك أفضل النهج ؟

هل كانت مفيدة؟

المحلول

هذا الأساس لا أعتقد أن هناك إضافة جانبا من النهج الخاص بك.هذا هو كيف نفعل ذلك في شركتنا, نحن المطورين هي المسؤولة عن خلق سيناريو التراجع النصي, و نحن مسؤولون عن ترك DB في نفس الحالة التي كان عليها قبل الأولي يتم تطبيق التغييرات.ثم دباس تشغيله في الإنتاج ، إذا كان هناك أي مشكلة سوف تشغيل التراجع النصي كل شيء عاد الى طبيعته.فقط نأخذ في الاعتبار تبعيات النظام الذي يغير الأشياء الخاصة بك ثم إنشاء سيناريو التراجع إلى الوراء.

نصائح أخرى

كنت في عداد المفقودين الخطوة الخامسة

  • قطرة جديدة من القيود و الفهارس
  • تغيير الجداول لإزالة الأعمدة الجديدة
  • قطرة إضافة الجداول
  • ارتكاب الصفقة
  • اختبار الجحيم من السيناريو قبل تشغيله في الإنتاج ،

نهج أكثر كفاءة من تسجيل التغييرات فور حدوثها مثل RoR الهجرات هل.لكل DB تغيير يمكنك إنشاء برنامج نصي سواء تطبيق تغيير لفة مرة أخرى (في اختيارك بالطبع).ثم يمكنك الحصول على هذه النصوص في إطار التحكم في الإصدار فقط مثل التعليمات البرمجية الخاصة بك.

بالإضافة إلى ذلك, إذا كنت الحفاظ على رقم الإصدار في قاعدة البيانات يمكنك تلقائية ذلك أكثر قليلا من خلال تحديد كل النصي مع رقم الإصدار بعد ذلك من زيادة أو نقصان رقم الإصدار في قاعدة البيانات وفقا أداء العمل.

إذا كان صغير نسبيا قاعدة البيانات فقط إجراء نسخة احتياطية قبل تطبيق الترقية.إذا كان كل شيء يذهب أحمق كنت تفعل استعادة.

بمجرد أن يذهب ويعيش جديدة يتم إدخال البيانات لا يمكنك حقا لفة مرة أخرى على أي حال.لديك فقط لإصلاح المشاكل.

إذا كنت تستخدم أداة مثل Redgate SQL مقارنة ، يمكنك تشغيل قارن بين قواعد البيانات في كلا الاتجاهين و استخدام كل لإنشاء البرامج النصية التي تحتاج إليها.ديف لحث السيناريو قد التغيرات كنت صنع حزب الثورة الديموقراطية إلى dev البرنامج النصي أن العودة إلى الأصلي بيانات الإنتاج الدولة.وهذا يضمن أن لا ننسى أي شيء في أي سيناريو أيضا.

مع SQL Server 2005 أو أحدث يمكنك أيضا إنشاء لقطة قاعدة البيانات, يسمح لك أن تذهب إلى تلك الدولة في أي وقت.انظر هذه الصفحة لمزيد من المعلومات:

http://msdn.microsoft.com/en-us/library/ms175158.aspx

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top