为了账号安全,请及时绑定邮箱和手机立即绑定

如何记录PostgreSQL查询?

如何记录PostgreSQL查询?

如何记录PostgreSQL查询?如何启用PostgreSQL 8.3执行的所有SQL的日志记录?编辑(更多信息) 我更改了这些行:log_directory = 'pg_log'                     log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'log_statement = 'all'并重新启动PostgreSQL服务...但没有创建日志...我正在使用Windows Server 2003。有任何想法吗?
查看完整描述

3 回答

?
森栏

TA贡献1810条经验 获得超5个赞

在您的data/postgresql.conf文件中,将log_statement设置更改为'all'


编辑

查看您的新信息,我会说可能还有一些其他设置需要验证:

  • 确保你已打开log_destination变量

  • 确保你打开 logging_collector

  • 还要确保log_directory目录中已存在该data目录,并且postgres用户可以写入该目录


查看完整回答
反对 回复 2019-07-23
?
芜湖不芜

TA贡献1796条经验 获得超7个赞

编辑您的/etc/postgresql/9.3/main/postgresql.conf,并按如下方式更改行。

注意:如果找不到该postgresql.conf文件,则只需键入$locate postgresql.conf终端即可

  1. #log_directory = 'pg_log'  log_directory = 'pg_log'

  2. #log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'  log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'

  3. #log_statement = 'none'  log_statement = 'all'

  4. #logging_collector = off  logging_collector = on

  5. 可选SELECT set_config('log_statement', 'all', true);

  6. sudo /etc/init.d/postgresql restart 要么 sudo service postgresql restart

  7. postgresql中的fire查询 select 2+2

  8. 查找当前登录 /var/lib/pgsql/9.2/data/pg_log/

日志文件往往会在一段时间内增长很多,并且可能会杀死您的计算机。为了您的安全,请编写一个bash脚本,该脚本将删除日志并重新启动postgresql服务器。


查看完整回答
反对 回复 2019-07-23
?
偶然的你

TA贡献1841条经验 获得超3个赞

SELECT set_config('log_statement', 'all', true);

具有相应的用户权限可以在连接后使用上面的查询。这将影响日志记录,直到会话结束。


查看完整回答
反对 回复 2019-07-23
  • 3 回答
  • 0 关注
  • 1062 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信