Bir sahneleme DB değişiklikleri izlemek ve ardından ana DB üzerine kabul verileri itmek için iyi bir yolu nedir?

2 Cevap php

Bir sahneleme DB değişiklikleri izlemek ve ardından ana DB üzerine kabul verileri itmek için iyi bir yolu nedir?

Müvekkilim bir komut dosyası veya herhangi bir çözüm ihtiyacı: O iki veritabanını, o deney portal onun verileri sınar ve o uygun bulursanız o canlı görüntülenen ana DB, bu değişiklikleri kullanabileceğiniz bir sahneleme DB varsa bir site. Bunun için o, uygun bulursa o ana veritabanında aynı şeyi yapabilirsiniz, böylece / ekler siler / tüm güncellemeleri kaydetmek veya izlemek için çözüm gerekiyor.

NOTE: sadece bir sunucu, ayrı bir sunucu var, dolayısıyla ikili günlük çoğaltma benim durumumda için çalışıyor gibi görünüyor değil.

2 Cevap

Test ve üretim hem de veritabanları test süresi boyunca bağımsız olarak evrimleştiğini varsayarsak, ben ayıklamak {[, bir çözüm düşünmek için iyi bir başlangıç ​​noktası günün sonunda, daha sonra test veritabanı sorgu günlüğünü etkinleştirmek olacağını söyleyebilirim den (0)]}, CREATE, DROP, INSERT, UPDATE, DELETE vb tablolar Test veritabanı sorgu log dosyası ve sadece belki ayıran, üretim veritabanı geri bu ifadeleri çalmayı deneyin DDL ve DML (bir işlemde DML ile.)

Sofranıza herhangi diğer tablolardaki yabancı anahtar olarak kullanılan otomatik artış sütunlar varsa, INSERT için gerçek otomatik artım değerleri yakalamak için AFTER tetiği kullanın ve {[(2)] } tablolar ve üretim oynatma için ayrı bir dosyaya karşılık gelen bir SQL deyimini yazmak; Hala (onlar da tetikleyicisi aracılığıyla yakalanan olmasına rağmen, ve DELETE s.) DDL ifadeleri yakalamak için sorgu günlüğü kullanabilirsiniz

Ikili günlükleri aksine, sorgu günlükleri (veya bir tetikleyici üretilen eşdeğer günlükleri) net metin ve daha fazla manuel üretim ve test sistemleri arasındaki olası çatışmaları ya da ayrılıklarını çözmek için sorguları çimdik sağlar.