面试题答案
一键面试- 查看日志:
- pg_ctl status:可以查看PostgreSQL服务的状态,其中包含日志相关信息,如日志文件位置等。例如在启动或停止服务异常时,通过此命令查看日志位置进一步分析问题。
- 查看日志文件:PostgreSQL日志默认存储在数据目录的
pg_log
目录下(可通过配置文件postgresql.conf
中的log_directory
修改)。直接查看日志文件,如tail -f <日志文件名>
(假设日志文件命名有规则,如postgresql - YYYY - MM - DD_HHMMSS.log
),使用tail -f
命令实时追踪日志输出,便于及时发现运行时问题。
- 清理日志:
- 配置自动清理:在
postgresql.conf
中设置log_rotation_age
和log_rotation_size
参数。log_rotation_age
指定日志文件保留的时长(单位为分钟),例如设置为1440
(一天),表示日志文件一天后会进行轮转。log_rotation_size
指定日志文件达到多大时进行轮转(单位为kB),如设置为10240
(10MB),当日志文件大小达到10MB时,就会生成新的日志文件。
- 手动清理:直接删除不需要的日志文件,但要注意不要在数据库运行时删除正在写入的日志文件。比如在数据库停止状态下,进入
pg_log
目录,使用rm <日志文件名>
命令删除指定日志文件。但删除前需谨慎确认,避免误删有用信息。
- 配置自动清理:在