在PostgreSQL 8.4中记录SELECT语句

我有一个包含敏感数据的表,根据数据保护策略,我们必须记录每次数据的读/写,包括行标识符和访问表的用户.使用触发器写入没有问题,但SELECT语句不支持触发器.

这样做的最佳方法是什么?我已经查看了规则,但我无法让它们插入到表中,我已经尝试记录每个查询,但这似乎没有记录SELECT语句.理想情况下,为了安全起见,我希望将日志保存在数据库的表中,但是记录到文件也很好.

谢谢,
大卫

解决方法

您可以在Postgresql中启用SENTENCE LOGGING:

postgresql.conf中:

log_statement = 'all'                   # none,ddl,mod,all

然后重新启动数据库,将记录所有的senteces.

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...