在刚安装完的 PostgreSQL 中,通常只需要像下面这样配置日志,并保持其他默认值,就基本可以满足用户大多数需求:
# 启动日志收集, 这是一个后台进程,抓取发送到stderr的日志消息,并会将他们重定向到日志文件。 logging_collector = on # 日志输出路径,可以是自定义绝对路径或相对于数据目录 PGDATA 的相对路径log_directory = ‘log‘ # 文件名,可以带上格式字符串log_filename = ‘postgresql-%a.log‘ # 当生成新的文件时,文件名已存在,则覆盖同名旧文件名log_truncate_on_rotation = on #设置日志记录内容,log_statement:none, ddl, mod, and all 默认是 none # None表示不记录,ddl记录所有数据定义命令,比如CREATE,ALTER,和DROP语句,# mod记录所有ddl语句,加上数据修改语句INSERT,UPDATE等
# all记录所有执行的语句,将此配置设置为all可跟踪整个数据库执行的SQL语句,但会对数据库性能产生较大影响,生产环境不建议配置此值
log_statement = mod # 以上设置完成之后,可以记录到 update、drop 等,但是并不会记录 select 语句,加上 log_min_duration_statement = 0 才可以记录到selectlog_min_duration_statement=0
完成以上设置后,7天后会有7个日志文件,分别为周一到周日,日志文件会不断的覆盖前一个星期,可以记录到执行的所有sql语句
原文地址:https://www.cnblogs.com/ryanzheng/p/9926531.html
时间: 2024-10-11 13:11:36