Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Oracle : Tại sao Oracle tạo vectơ thay đổi làm lại mô tả sự thay đổi đối với khối hoàn tác khi người dùng đưa ra lệnh thay đổi một mục dữ liệu

Giả sử bạn có một giao dịch chưa hoàn thành (chưa cam kết). Oracle đã làm tất cả những điều bạn nói trong câu hỏi.

Bây giờ máy bị treo.

DBA, sau khi khôi phục máy (hoặc trên máy mới, tùy thuộc vào :)) khôi phục bản sao lưu cuối cùng và áp dụng tất cả nhật ký làm lại trên phiên bản mới. Trong quá trình làm lại cũng là những gì đã được thực hiện ở bước 1. Nhưng công việc đó không được cam kết, vì vậy động cơ cần phải quay lại. Đối với điều này, nó cần phân đoạn khôi phục. Nhưng phân đoạn khôi phục sẽ không ở đó nếu bạn không đăng nhập nó ở bước 3.

Tôi biết bây giờ bạn sẽ hỏi:tại sao nó áp dụng nhật ký cho công việc không cam kết? Đó cũng là câu hỏi của tôi khi tôi đọc về nó. Tôi không biết chắc chắn, nhưng có lẽ nó dễ dàng hơn để làm như vậy. Có lẽ khó kiểm tra mọi mục nhập của nhật ký rằng đó là một phần của giao dịch đã cam kết. Tuy nhiên, đây là cách Oracle hoạt động:Tôi áp dụng tất cả các bản ghi làm lại sau đó khôi phục các giao dịch chưa cam kết.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhà phát triển SQL không hiển thị XML

  2. Cơ sở dữ liệu lỗi của Oracle ở đâu?

  3. Làm thế nào để hợp nhất một nhóm bản ghi trong oracle?

  4. Lọc theo ngày trong tuần

  5. Truy vấn phân cấp trong Oracle SQL:Làm phẳng hệ thống phân cấp và thực hiện tổng hợp