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

Làm thế nào để khôi phục dữ liệu trong bảng Oracle?

Đầu tiên, bạn có thực hiện thay đổi không? Nếu không, bạn có thể chỉ cần đưa ra một rollback để hoàn nguyên các thay đổi của bạn.

Giả sử rằng bạn đã thực hiện các thay đổi của mình, những người dùng khác có đang sửa đổi bảng cùng một lúc không? Bạn có cần giữ lại những thay đổi mà người khác đã thực hiện và chỉ hoàn nguyên những thay đổi bạn đã thực hiện trong giao dịch của mình không? Hay bạn có thể khôi phục toàn bộ bảng về một thời điểm trước khi thực hiện các thay đổi của bạn không?

Nếu bạn có thể khôi phục toàn bộ bảng vào một thời điểm

FLASHBACK TABLE <<table name>>
  TO TIMESTAMP( systimestamp - interval '10' minute )

sẽ trả một bảng về trạng thái 10 phút trước, giả sử rằng UNDO cần thiết để làm như vậy vẫn có sẵn (vì vậy bạn chỉ có một thời gian giới hạn sau khi mắc lỗi để có thể hồi tưởng lại sai lầm đó). Để phát hành một FLASHBACK TABLE , bạn cũng phải đảm bảo rằng

  • Bảng đã cho phép di chuyển hàng ALTER TABLE <<table name>> ENABLE ROW MOVEMENT
  • Bạn phải có FLASHBACK các đặc quyền trên bảng hoặc FLASHBACK ANY TABLE đặc quyền hệ thống.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. XML Oracle:Trích xuất nhiều nút con

  2. Áp dụng hàm COUNT trên một nhóm con của các nhóm

  3. Tôi đang cố gắng đạt được kết quả đầu ra dưới mức

  4. Cách Chèn Dấu thời gian trong Oracle ở Định dạng Cụ thể

  5. Tìm các hàng không chứa dữ liệu số trong Oracle