Bu sayfa makine çevirisidir. İngilizce orijinalini okuyun. English

IBSurgeon kütüphanesi

İç 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:

Code
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:

Code
gfix.exe -mend -ig -user SYSDBA -pass masterkey path_to_your_database

ve ardından veritabanını yedekleyin:

Code
gbak.exe -b -g -user SYSDBA -pass masterkey path_to_your_database path_to_backup

ve geri yükleyin:

Code
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.