Tôi quan tâm đến phương thức ghi nhật ký thường xuyên trong cơ sở dữ liệu Oracle. Phương pháp của chúng tôi là:Làm cách nào để đăng nhập vào cơ sở dữ liệu Oracle?
Chúng tôi tạo bảng nhật ký cho bảng được ghi nhật ký. Bảng nhật ký chứa tất cả các cột của bảng gốc cộng với một số trường đặc biệt bao gồm dấu thời gian, loại sửa đổi (chèn, cập nhật, xóa), id của trình sửa đổi. Trình kích hoạt trên bảng ban đầu sẽ tạo một hàng nhật ký cho mỗi lần chèn và xóa và hai hàng cho một sửa đổi. Các hàng nhật ký chứa dữ liệu trước và sau khi thay đổi dữ liệu gốc.
Mặc dù nhà nước của các hồ sơ có thể được khai thác trở lại trong thời gian sử dụng phương pháp này, nó có một số nhược điểm:
- Giới thiệu của một cột mới trong bảng ban đầu không tự động liên quan đến việc sửa đổi bản ghi.
- Sửa đổi nhật ký ảnh hưởng đến bảng nhật ký và trình kích hoạt và rất dễ gây rối.
- Trạng thái của một bản ghi tại một thời điểm cụ thể không thể được xác định một cách đơn giản.
- ...
Khả năng khác tồn tại là gì? Loại công cụ nào có thể được sử dụng để giải quyết vấn đề này?
Tôi chỉ biết log4plsql. Ưu điểm/nhược điểm của công cụ này là gì?
Chỉnh sửa: Dựa trên câu trả lời của Brian Tôi đã tìm thấy reference sau đây giải thích kiểm tra hạt tiêu chuẩn và tốt.
không nhận được bạn trước và sau giá trị tho. Nó khá hạn chế. Ngoại trừ nó cung cấp cho bạn SELECTS mà bạn không thể nhận được từ các bảng được người dùng kiểm soát. –
FGA sẽ giúp bạn nhận được trước và sau các giá trị. Đó là cách sử dụng rõ ràng của FGA. Tôi đã làm cho điểm mà FGA cũng có thể được sử dụng để theo dõi sử dụng lựa chọn. –