Her şeyden önce ben bir geliştiriciyim, bir DBA veya sysadmin değil; lütfen nazik ol :)
Tek bir kullanıcı işleminin veritabanındaki karmaşık değişiklikleri tetikleyeceği bir uygulama iş akışı üzerinde çalışıyorum - bazı tablolarda yüzlerce kayıt oluşturarak, diğerlerinde yüzlerce kaydı güncelleyebiliyor, vb. Sonuçta, yaklaşık 12 tablo (~ 100'den fazla) ) bu eylem tarafından dokunulur. Karmaşıklık nedeniyle, başka bir test yapmadan önce tüm değişiklikleri manuel olarak geri almak benim için çok zor. Geliştirme zamanımın çoğunda, sadece iş akışının sonuna yakın bir "ROLLBACK" ifadesi ekleyebilirim, ancak değişikliklerimi yapmaya yakın olduğumda, gerçek olanı test etmem gerekiyor.
Çalıştırılacak üretim veritabanının yerel bir kopyası var. Benim durumumda, testler arasında boşa gidip geri yüklemek, tüm değişiklikleri geri almak için bir komut dosyası yazmaktan daha hızlıdır. Daha hızlı, ancak hala beni çok yavaşlatıyor (geri yükleme yaşlanma dizüstü bilgisayarımda yaklaşık 20 dakika sürüyor). Veritabanının geçerli durumunun bir anlık görüntüsünü kaydedebilmemin ve daha sonra hızlı bir şekilde geri yükleyebilmemin bir yolu var mı?
Sistemdeki tek kullanıcı olduğumu garanti ediyorum ve root erişimim var. Veri tabanı dökümü, tar'ed ve gzip'ed ~ 100 MB'dir. PostgreSQL sürümü 8.3'tür.
Herhangi bir yardımcı fikir için şimdiden teşekkür ederiz.