İç gds yazılım tutarlılık kontrolü - Firebird/InterBase veritabanları nasıl kurtarılır
Oleg Matveev, 20-Kasım-2014
Firebird (veya InterBase) örneği, veritabanı tutarlılığının etkilenmeyeceği garantisi olmadan bazı işlemleri gerçekleştiremediğinde, bir hata (bugcheck) yükseltir ve mevcut işlemi kesintiye uğratır.
Bu tür Firebird hata metni, zorunlu önek “internal gds software consistency check (can’t continue after bugcheck)” (son Firebird sürümleri için “internal Firebird software consistency check”) ile başlar ve ardından gerçek hata metni gelir (“decompression overran buffer (179)” gibi).
Genellikle “internal software consistency check” hataları, Firebird veritabanının bozuk olduğu anlamına gelir (ancak bu bir kural değildir) - yani, dahili veritabanı görüntüsünün tutarlılığı bozulmuştur ve normal çalışmaya devam etmek için düzeltilmesi gerekir.
firebird.log dosyanızda veya uygulamanızda bir hata mesajı olarak böyle bir hata görürseniz, veritabanınızın iyi olduğundan emin olmak için şu komutu çalıştırın:
gfix.exe -v -full -user SYSDBA -pass masterkey path_to_your_database
gfix doğrulaması hatalar döndürürse, veritabanı bozuktur ve kurtarma gerektirir.
Önce gfix ile kurtarmayı deneyin:
gfix.exe -mend -ig -user SYSDBA -pass masterkey path_to_your_database
ve ardından veritabanını yedekleyin:
gbak.exe -b -g -user SYSDBA -pass masterkey path_to_your_database path_to_backup
ve geri yükleyin:
gbak.exe -c -v -user SYSDBA -pass masterkey path_to_backup path_to_new_database
gfix/gbak sırasında bir sorun olursa, bozuk veritabanını IBSurgeon FirstAID aracıyla kurtarın - “internal Firebird consistency check” hatalarının çoğu bununla düzeltilebilir; FirstAID özellikle ağır veritabanı bozulmalarıyla başa çıkmak için tasarlanmıştır.
Ayrıca, bozuk Firebird veya Interbase veritabanınız varsa, lütfen destek ekibimizle iletişime geçin: [email protected] ve hatanın tam metnini (veya ekran görüntüsünü) sağlayın.