Sử dụng mệnh đề DROP FLASHBACK ARCHIVE để xóa bỏ một flashback data archive từ hệ thống. Câu lệnh này sẽ xóa bỏ flashback data archive đó và tất cả dữ liệu lịch sử trong nó, nhưng không xóa bỏ các tablespace được sử dụng bởi flashback data archive.
5.1.3.2. Điều kiện tiên quyết
Bạn phải có quyền FLASHBACK ARCHIVE ADMINISTER để bỏ một flashback data archive
5.1.3.3. Cú pháp
drop_flashback_archive
DROP FLASHBACK ARCHIVE flashback_archive;
Flashback_archive
Chỉ ra tên của flashback data archive mà bạn muốn bỏ.
Khi một hoạt động khôi phục Oracle Flashback được thực hiện, DBA phải xác định một thời điểm–được xác định bởi SCN ( System Change number ) hoặc thời gian đánh dấu (timestamp) - là điểm mà sau này bạn có thể dùng để flashback dữ liệu. Oracle Flashback Restore point là các nhãn bạn có thể dùng thay thế cho SCN hoặc timestamp transaction được sử dụng trong các hoạt động Flashback Database, Flashback table, and Oracle Recovery Manager ( RMA ). Hơn nữa, một CSDL có thể được Flashback thông qua một dữ liệu khôi phục trước đó và được mở với một câu lệnh OPEN RESETLOGS bằng cách sử dụng một điểm khôi phục đảm bảo. Điểm khôi phục được đảm bảo cho phép những thay đổi trọng yếu( lớn ) trong CSDL – chẳng hạn như một loạt công việc, cập nhật, bản vá – để nhanh chóng hoàn tác ( undo ) bằng cách đảm bảo rằng rằng việc hoàn tác đã yêu cầu tua lại database được giữ lại ( lưu lại ).
Sử dụng tính năng Oracle Flashback restore point có một số lợi ích sau:
Khả năng nhanh chóng khôi phục lại một trạng thái nhất định, một thời điểm trước một kế hoạch hoạt động không như mong muốn ( ví dụ việc cập nhật một phần mềm Oracle, một loạt các công việc thất bại, hoặc nâng cấp một ứng dụng ).
Khả năng đồng bộ hóa lại cơ sở dữ liệu ảnh chụp chế độ chờ với các cơ sở dữ liệu chính. Một cơ chế nhanh chóng để khôi phục lại một bài kiểm tra hoặc cơ sở dữ liệu nhân bản vô tính về trạng thái ban đầu của nó.
5.2.1. CREATE RESTORE POINT 5.2.1.1. Mục đích 5.2.1.1. Mục đích
Sự dụng lệnh CREATE RESTORE POINT để tạo một điểm khôi phục, cái được gắn liền với 1 dấu thời gian ( Timestamp ) hoặc một SCN của CSDL. Một điểm khôi phục có thể flash back một bảng hoặc một CSDL về một thời điểm xác định bằng cách sử dụng điểm khôi phục ( restore point ) mà không cần xác định một SCN hoặc dấu thời gian. Các điểm khôi phục cũng rất hữu ích trong các hoạt động RMAN khác nhau, bao gồm sao lưu và sao chép dữ liệu.Bạn có thể sử dụng RMAN để tạo 1 điểm khôi phục trong quá trình thực hiện một bản sao lưu.
Hướng dẫn người dùng về Oracle Database Backup and Recovery sẽ cung cấp thêm nhiều thông tin về về việc tạo và sử dụng các điểm khôi phục, các điểm khôi phục đảm bảo , thôn tin về sao chép CSDL, và lưu trữ sao lưu.
FLASHBACK TABLE , DATABASE FLASHBACK , và thả điểm khôi phục thông tin về cách sử dụng và thả các điểm khôi phục
5.2.1.2.Điều kiện tiên quyết
Để có thể tạo một điểm khôi phục bình thường bạn cần phải có quyền SELECT ANY
DICTIONARY, hoặc FLASHBACK ANY TABLE. Để tạo ra các điểm khôi phục đảm bảo bạn cần phải có các quyền hệ thống SYSDBA.
Để có thể xem hoặc sử dụng một điểm khôi phục, bạn cần phải có quyền hệ thống SELECT ANY DICTIONARY hoặc FLASHBACK ANY TABLE hoặc SELECT_CATALOG_ROLE role.
Bạn có thể tạo một điểm khôi phục trên CSDL chính hoặc dự phòng. Các CSDL có thể được mở hoặc được gắn kết nhưng không mở. Nếu CSDL được gắn kết, có phải được đóng một cách hoàn toàn trước khi gắn kết, trừ khi nó là một CSDL vật lý dự phòng.
Bạn phải tạo ra một khu vực khôi phục nhanh trước khi tạo ra một điểm khôi phục đảm bảo. Bạn không cần phải enable Flashback database trước khi bạn tạo một điểm khôi phục.
5.2.1.3. Cú pháp
Create restore point “tên điểm khôi phục” ;
5.2.1.4. Ngữ nghĩa
Restore_point
Xác định tên của kiểm khôi phục. Tên là một giá trị kí tự có độ dài 128 kí tự.
CSDL có thể ghi nhớ ít nhất 2048 điểm khôi phục bình thường. Các điểm khôi phục bình thường sẽ được lưu trữ trong CSDL với thời gian ngắn nhất được quy định cho tham số khởi tạo
CONTROL_FILE_RECORD_KEEP_TIME. Giá trị mặc định cho tham số đó là 7 ngày. Các điểm khôi phục đảm bảo được lưu trữ trong CSDL cho đến khi có thay đổi từ người sử dụng.
Nếu bạn chỉ định không PRESERVE và cũng không GUARANTEE FLASHBACK DATABASE, sau đó kết quả các điểm khôi phục cho phép bạn hồi tưởng CSDL tới một điểm khôi phục trong khoảng thời gian xác định bởi tham số khởi tạo BD_FLASHBACK_RETENTION_TARGET. Cơ sở dữ liệu sẽ tự động quản lý các điểm khôi phục như vậy. Khi số lượng điểm khôi phục đạt mức tối
đa, theo như quy tắc restore_point được mô tả ở trên, CSDL sẽ tự động bỏ các điểm khôi phục cũ nhất. Trong một số trường hợp, các điểm khôi phục sẽ được giữ lại trong danh mục phục hồi RMAN để sử dụng trong việc khôi phục sao lưu lâu dài. Bạn có thể drop một điểm khôi phục bằng câu lệnh DROP RESTORE POINT.
Mệnh đề AS OF
Sử dụng mệnh đề này để tạo một điểm khôi phục tại một datetime riêng biệt hoặc một SCN trong quá khứ.Nếu như bạn chỉ rõ TIMESTAMP, sau expr phải có 1 biểu thức giá trị thời gian chỉ đến một thời điểm trong quá khứ.Nếu như bạn chỉ rõ SCN, thì sau expr phải có một giá trị SCN trong CSDL trong quá khứ.Trong cả 2 trường hợp, expr phải tham khảo một datetime hoặc một SCN trong CSDL.
PRESERVE
Ghi chú PRESERVE để chỉ ra rằng các điểm khôi phục phải được xóa một cách rõ ràng. Vì các điểm khôi phục này là hữu ích trong việc duy trì một CSDL hồi tưởng.
GUARANTEE FLASHBACK DATABASE
Một điểm khôi phục đảm bảo cho phép bạn hồi tưởng CSDL về một điểm xác định từ một điểm khôi phục bất kì của việc thiết lập tham số khởi tạo DB_FLASHBACK_RETENTION_TARGET. Khả năng đảm bảo khôi phục phụ thuộc vào không gian có sẵn của vùng khôi phục nhanh ( fast recovery ).
Điểm khôi phục đảm bảo chỉ đảm bảo rằng CSDL sẽ được duy trì đủ các bản hồi tưởng để hồi tưởng CSDL về điểm khôi phục đảm bảo. Nó không đảm bảo rằng CSDL sẽ đủ undo để hồi tưởng bất kì bảng nào giống như điểm khôi phục.
Điểm khôi phục đảm bảo thì luôn được duy trì. Nó phải được xóa một cách rõ ràng bằng cách sử dụng câu lệnh DROP RESTORE POINT. Chúng không bị quá hạn.Điểm khôi phục đảm bảo có thể sử dụng phần lớn không gian của vùng khôi phục nhanh.Vì thế, Oracle khuyến cáo rằng bạn chỉ tạo các điểm khôi phục đảm bảo sau khi đã xem xét cẩn thận.
Ví dụ:
Tạo và sử dụng Restore point: Ví dụ dưới đây tạo một restore point bình thường, cập nhật một bảng, và sau đó hồi tưởng bảng về điểm restore point. Ví dụ giả định người dùng hr có đủ đặc quyền hệ thống để thực hiện các câu lệnh.
CREATE RESTORE POINT good_data;
SALARY --- 12000
UPDATE employees SET salary = salary*10 WHERE employee_id = 108;
SELECT salary FROM employees WHERE employee_id = 108; SALARY
--- 120000 COMMIT;
FLASHBACK TABLE employees TO RESTORE POINT good_data; SELECT salary FROM employees
WHERE employee_id = 108; SALARY
--- 12000
5.2.2. DROP RESTORE POINT5.2.2.1. Mục đích 5.2.2.1. Mục đích
Sử dụng câu lệnh DROP RESTORE POINT để bỏ một điểm khôi phục bình bình thường hoặc một điểm khôi phục đảm bảo từ CSDL.
Bạn không cần phải bỏ những điểm khôi phục bình thường.CSDL tự động bỏ những điểm khôi phục cũ nhất khi cần thiết, như đã được đề cập trong phần giới thiệu về Restore point.Tuy nhiên bạn có thể chủ động bỏ những điểm khôi phục nếu như bạn muốn sử dụng lại tên của chúng.
Điểm khôi phục đảm bảo thì không bị bỏ đi một cách tự động. Do đó, nếu như bạn muốn bỏ một điểm khôi phục đảm bảo bạn cần phải thực hiện câu lệnh.
5.2.2.2.Điều kiện tiên quyết
Để bỏ một điểm khôi phục bình thường, bạn cần phải có một trong 2 đặc quyền hệ thống là
SELECT ANY DICTIONARY hoặc FLASHBACK ANY TABLE.Để bỏ một điểm khôi phục bình thường bạn cần phải có đặc quyền SYSDBA.
5.2.2.3. Cú pháp
5.2.2.4. Ngữ nghĩa
Restore_point: chỉ rõ tên của điểm khôi phục mà bạn muốn bỏ.
Ví dụ:
Cho một ví dụ bỏ điểm khôi phục có tên là good_data đã được tạo ra trong phần ví dụ về createing and using restore point
Tài liệu tham khảo
Tài liệu: Oracle Database 11g: Administration Workshop I Volume II • Student Guide
http://diendan.congdongcviet.com/showthread.php?t=1978 http://psoug.org/reference/flash_version.html
http://docs.oracle.com/cd/E11882_01/appdev.112/e25518/adfns_flashback.htm#BJFFDCEH
http://www.toadworld.com/KNOWLEDGE/KnowledgeXpertforOracle/tabid/648/TopicID/FLA10F/ Default.aspx