Giới thiệu

Có 1 tính năng trong Oracle Database, mà các bạn mới làm thường ít để ý, và nó gây lãng phí khá nhiều dung lượng lưu trữ.

Đó là Recycle Bin

Khi tính năng này được bật lên, nếu bạn xoá 1 bảng, bảng đó sẽ không thực sự bị xoá, nó (và các object liên quan như index, constraint, lob) sẽ được lưu giữ trong Recycle Bin.

Nếu sau này, bạn hối hận vì đã xoá nó, bạn hoàn toàn có thể khôi phục nó lại từ Recycle Bin. Kỹ thuật này còn có tên là Flashback Drop.

Tuy nhiên, việc nó vẫn còn ở lại Recycle Bin sau khi xoá, sẽ chiếm dụng dung lượng đáng kể. Nó sẽ vẫn cứ ở đó, cho đến khi tablespace đầy, cần cấp phát thêm dung lượng.

Do đó, nếu bạn thực sự muốn xoá 1 bảng, sau khi xoá bảng đó, bạn cần xoá nó cả trong Recycle Bin nữa.

Bạn có thể xem video demo tại đây

Thực hành với Recycle Bin

Kiểm tra xem Recycle Bin đã được bật hay chưa

Để kiểm tra xem Recycle Bin có đang được bật hay không, bạn dùng câu lệnh

show recyclebin

Nếu giá trị của recyclebin là ON, tức là tính năng Recycle Bin đã được bật.

Nếu tính năng Recycle Bin chưa được bật, bạn có thể bật nó lên bằng câu lệnh sau:

Sau đó restart lại database

Tương tự, nếu bạn muốn tắt chức năng Recycle Bin đi.

Tạo bảng để kiểm thử tính năng Recycle Bin:

Thử drop bảng xem sao

Kiểm tra Recycle Bin

Để kiểm tra xem trong Recycle Bin đang có những bảng nào, các bạn sử dụng câu lệnh sau:

Câu lệnh trên sẽ liệt kê các bảng trong Recycle Bin mà bạn sở hữu.

show recyclebin 2

Nếu bạn muốn xem tất cả các đối tượng đang có trong Recycle Bin, bạn cần truy vấn trong dba_recyclebin

Trong đó:

  • object_name: Tên của bảng sau khi bị drop. Tên của nó sẽ bắt đầu bằng BIN$…
  • original_name: Tên của bảng trước khi bị drop
  • droptime: Thời gian mà bảng bị drop
  • can_undrop: Có thể khôi phục lại bảng được hay không
  • can_purge: Có thể xoá bảng khỏi Recycle Bin được hay không

Khôi phục lại bảng từ Recycle Bin hay Flashback Drop

flashback table customer to before drop;

Xoá bảng khỏi Recycle Bin

Xoá 1 bảng cụ thể khỏi Recycle Bin

hay xoá toàn bộ Recycle Bin

 

 

 

Nguồn: https://dangxuanduy.com/

Hiện tại, tôi có tổ chức đều đặn các khóa học về quản trị Oracle Database, tôi sẽ để thông tin ở đây, để bạn nào quan tâm về lịch học cũng như chương trình học có thể theo dõi nhé.

KHOÁ DÀNH CHO NGƯỜI MỚI

KHÓA HỌC: QUẢN TRỊ ORACLE DATABASE THẬT LÀ ĐƠN GIẢN (ADMIN 1)

CÁC KHOÁ NÂNG CAO:

KHÓA HỌC ORACLE NÂNG CAO: QUẢN TRỊ KIẾN TRÚC MULTITENANT 12c

KHÓA HỌC ORACLE NÂNG CAO: QUẢN TRỊ HỆ THỐNG DATA GUARD

CÁC KHOÁ COMBO:

COMBO 1: ADMIN 1 + MULTITENANT 12c

COMBO 2: ADMIN 1 + DATA GUARD

COMBO 3: ADMIN 1 + MULTITENANT 12c + DATA GUARD

Đọc thêm  PgPool là gì

LỊCH HỌC:

Mời bạn xem tại đây: LỊCH HỌC CÁC LỚP ORACLE 

ĐĂNG KÝ:

https://forms.gle/MtCAoRQFenP886y79

Hãy tham gia group “Kho tài liệu kiến thức database” để cùng học hỏi và chia sẻ nhé.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *