SQL Server 2008R2'de çok büyük bir üretim veritabanına ve çok büyük bir test ortamı veritabanına sahibim. Her iki veritabanı da benzer tablo yapısına sahiptir, ancak farklı kullanıcılar / girişler / izinler / roller.
Test veritabanında sadece birkaç tabloyu periyodik olarak üretimden yaklaşık ayda bir kez yenilemem gerekiyor.
Bunu yapmayı planladığım şu an
- Üretimden ihtiyacım olan tabloları dışa aktarmak için BCP yardımcı programını kullanın.
- Bcp dışa aktarma dosyasını test sunucusuna kopyalayın
- Testte yenilediğim tüm tablolarda dizinleri ve kısıtlamaları devre dışı bırak
- Test veritabanı tablolarını kesme
- Verileri BCP kullanarak Test veritabanı tablolarına geri yükleyin.
- Testlerde dizinleri yeniden oluşturma ve kısıtlamaları yeniden etkinleştirme
Bütün bunlar böyle küçük bir görev için biraz fazla karmaşık görünüyor. Ayrıca (t-log'da) çok fazla yineleme üretecek gibi görünüyor Bunu yapmanın daha iyi bir yolu var mı?
Bunu yapmayı düşündüğüm bir başka yol, Üretim'den bir test ortamına yedeklemeyi geri yüklemektir - ancak sahip olduğum sorun, tam bir yedeklemenin oldukça büyük olacağı ve tüm tabloların yenilenmesi gerekmiyor, sadece birkaç tane- -ve ayrıca üretim veritabanındaki kullanıcılar ve güvenlik testten farklıdır. Tüm veritabanını geri yüklersem, üretim veritabanındaki güvenlik ayarları üzerine yazılır.