Database server chết đột tử thì cứu dữ liệu như thế nào?
Mô tả tình huống:
Server database đang chạy thì lăn ra chết do mất điện, sự cố đột ngột => đột tử, lúc này dữ liệu chắc chắc sẽ bị lỗi vì server sập, quá trình ghi dữ liệu chưa hoàn tất…
Mục tiêu: là chúng ta cứu dữ liệu đến thời điểm gần nhất trước khi xảy ra sự cố nhất có thể
Lúc này khi bật Database lên thì không thể Open được mà có thể chỉ mount hoặc là nomount được thôi.
Trình tự các bước kiểm tra thực hiện:
–Mount database lên:
startup mount
–Tìm số scn cuối cùng first_change#
select group#, first_change#, status, archived from v$log;
–Tiến hành recover database tới số SCN bên trên (tất nhiên chúng ta phải có bản backup full gần nhất nhé)
restore database;
recover database until scn SCN_NUMBER; –SCN ở bên trên
–Nếu xuất hiện lỗi => thực hiện offline datafile theo hướng dẫn
alter database datafile 1 offline;
–Thực hiện lại bước recover bên trên
restore database;
recover database until scn SCN_NUMBER;
–Online datafile bên trên lên
alter database datafile 1 online;
–Open database
alter database open resetlogs;