Làm thế nào để sửa chữa cơ sở dữ liệu Firebird bị hỏng?
Alexey Kovyazin, cập nhật lần cuối 28-Tháng 3-2014
Nếu cơ sở dữ liệu Firebird bị hỏng, vui lòng làm theo các bước sau để sửa chữa:
- Dừng máy chủ Firebird (trên Windows, nó thường chạy như một dịch vụ, vì vậy hãy mở Control Panel, chạy applet Services và dừng “Firebird Server - Default Instance”). Đừng sử dụng cơ sở dữ liệu bị hỏng - điều này dẫn đến hỏng hóc thêm. Ngoài ra, không sao chép cơ sở dữ liệu Firebird khi máy chủ Firebird đang chạy - điều này dẫn đến bản sao bị hỏng và, đôi khi, làm hỏng cả cơ sở dữ liệu gốc.
- Tạo một bản sao của tệp cơ sở dữ liệu Firebird - thường là một tệp duy nhất có phần mở rộng fdb hoặc gdb, và khi dịch vụ Firebird đã dừng, việc sao chép tệp cơ sở dữ liệu bằng lệnh sao chép thông thường hoặc Windows Explorer là an toàn. Luôn giữ một bản sao gốc của cơ sở dữ liệu Firebird bị hỏng để sử dụng trong tương lai!
- Khởi động máy chủ Firebird và chạy các lệnh sau trong command prompt, từ thư mục Firebird\Bin (thường các công cụ gfix và gbak nằm trong Program Files\Firebird\Firebird_2.5.in):
gfix.exe -v -full -user SYSDBA -pass masterkey path_to_your_database
gfix.exe -mend -ig -user SYSDBA -pass masterkey path_to_your_database
gbak -b -g -v -user SYSDBA -pass masterkey path_to_your_database path_to_backup
Hãy thử chạy tất cả chúng, ngay cả khi gfix hiển thị lỗi.
- Nếu sao lưu hoàn tất thành công, khôi phục cơ sở dữ liệu:
gbak -c -v -user SYSDBA -pass masterkey path_to_backup path_to_database
- Nếu gbak thất bại, hãy tải xuống FirstAID Diagnostician, cài đặt nó, và chạy Diagnose trên cơ sở dữ liệu bị hỏng gốc. Xem thêm chi tiết tại trang sản phẩm FirstAID. Gửi toàn bộ văn bản lỗi (hoặc ảnh chụp màn hình) và nhật ký chẩn đoán đến Bộ phận hỗ trợ IBSurgeon [email protected].
Các công cụ khôi phục của IBSurgeon
Chúng tôi cung cấp công cụ FirstAID để khôi phục cơ sở dữ liệu tự động, công cụ này (kết hợp với gfix và gbak tiêu chuẩn) cho phép sửa chữa tới 95% các trường hợp hỏng hóc cơ sở dữ liệu Firebird và InterBase phổ biến nhất.
Nếu phiên bản đầy đủ của FirstAID không thể sửa chữa hỏng hóc cơ sở dữ liệu, chúng tôi cung cấp 2 giờ hỗ trợ khôi phục miễn phí để giải quyết vấn đề này.
Để biết thêm thông tin, hãy liên hệ với bộ phận hỗ trợ của IBSurgeon: [email protected].