أفضل الممارسات لإدارة الهجرات التي تحديث العديد من قواعد البيانات؟

StackOverflow https://stackoverflow.com/questions/765891

سؤال

يقوم فريقي بتقييم الأدوات والعمليات لإدارة عمليات نقل قاعدة البيانات / قاعدة البيانات على النحو الموصوف من قبل مارتن فاولر، Pramod Sadalage، ET. آل. نحن مهتمون بالعمليات الآلية المتكررة وقابلة للإشارة، لذلك نحن لسنا مهتمين بالتقنيات مثل تشغيل SQL يدويا في كل مرة ننشر فيها. نحن نستخدم حاليا CruiseControl.net للتكامل المستمر.

تتمتع بيئة الإنتاج لدينا بخوادم قاعدة بيانات SQL Server 2000 متعددة مع النسخ المتماثل بينها. وبالتالي فإن هجراتنا ستؤدي إلى تغييرات على المخطط على كل من خادم قاعدة البيانات المصدر والهدف.

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

سؤالي هذا ما يلي: هل يعتبر هذا النهج أفضل الممارسات، أم أن هناك تقنية أفضل لتطبيق الهوجريات التي تلمس خوادم قاعدة بيانات متعددة؟

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

المحلول

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

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

نصائح أخرى

يمكن لبصرية الاستوديو 2008 (طبعة الفريق، على وجه التحديد GDR) التعامل مع النشر الآلي للمخطط ضد ملف المخطط / البيانات الوصفية المحددة التي يمكنك نشرها في الخوادم. يمكن تضمين هذا في عملية البناء / النشر الخاص بك. ومع ذلك، أعتقد أنه لا يزال هناك مشكلة حول تغييرات النسخ المتماثل ومخطط - لا توجد حزمة تفهم / تدرك إعداد النسخ المتماثل الخاص بك.

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

يمكنك تجربة مزيج من شينشيلين و Wizardby.: قم بتثبيت وكلاء Chinchillin على خوادم DB وتنفذ البرامج النصية الترحيل Wizardby أثناء عملية النشر الخاصة بك.

هذا التكامل في الأعمال، على الرغم من :)

هنا عند البوابة الحمراء، حصلنا الآن على حل هاجرات قابلة للتكرار يستخدم التحكم في SQL مقارنة ومصدر SQL. وبالتالي، يمكن استخدام SQL مقارنة سطر الأوامر لدعم عملية التكامل المستمرة.

http://www.red-gate.com/messageBoard/Viewtopic.php؟t=14107.

إنه حاليا بناء في وقت مبكر، لذلك نحن حريصون على الحصول على أكبر عدد ممكن من الملاحظات.

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