为了理解一个应用程序,如果每个数据库的更改都能以某种方式记录下来,那将是非常有帮助的。然后你可以在前端执行一个操作,看看数据库中发生了什么。(我只关心最后5分钟左右,但更多也无妨。)
我知道configure the JDBC driver可以记录执行的语句,但它记录的比我想看到的要多(例如,我不关心查询),并且被疯狂地混合到日志文件中。
我能想到的另一件事是为每个表创建触发器,这些触发器将更改的数据写入日志记录表。有人设法做到这一点吗?特别是创建一个脚本,为给定的一组表创建这些触发器?
为了理解一个应用程序,如果每个数据库的更改都能以某种方式记录下来,那将是非常有帮助的。然后你可以在前端执行一个操作,看看数据库中发生了什么。(我只关心最后5分钟左右,但更多也无妨。)
我知道configure the JDBC driver可以记录执行的语句,但它记录的比我想看到的要多(例如,我不关心查询),并且被疯狂地混合到日志文件中。
我能想到的另一件事是为每个表创建触发器,这些触发器将更改的数据写入日志记录表。有人设法做到这一点吗?特别是创建一个脚本,为给定的一组表创建这些触发器?
2条答案
按热度按时间deikduxw1#
你可以在Oracle文档中找到许多触发器的示例。你需要的是在插入、更新、删除每行触发器之后填充日志表。下面是Oracle文档中的一些示例:
http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/triggers.htm#LNPLS020
字符串
xdyibdwo2#
有了触发器,你可以只保留以前的数据(你的数据的历史)。为什么你不简单地插入你的日志在日志表?