在启动 postgresql 服务是遇到这种情况:
解决方法:
打开计算机管理====>查看应用程序日志信息,可以看出,由于日志配置错误的问题。
找到 postgresql.conf 文件,做如图修改,解决问题:
postgresql 日志配置参考下面的补充部分:
总结:
遇到类似的问题可以采用同样的方式,多注意查看windows日志,找到错误源。
补充:EDB日志配置-慢sql记录分析
1、打开:/postgresql的安装目录/data/postgresql.conf
2、找到并更改以下属性,其他的是方便观察设置的,注意要将属性前面的注释符'#'去掉才能生效
1
|
log_destination = 'csvlog'
|
-- 将日志输出成csv文件,postgresql.conf可以看到有多种文件类型
1
|
logging_collector = on
|
-- 必须打开
1
|
log_directory =‘/opt/postgresql/'
|
-- 输出日志的目录,建议修改
1
|
log_filename = 'postgresql-%Y-%m-%d_%H%M%S_info.log'
|
--日志名称,eg:postgresql-2019-01-14_161143_info.log
1
|
log_rotation_age = 1d
|
-- 单个日志文件的生存期,默认一天
-- 在日志文件大小没有达到log_rotation_size时,一天只生成一个日志文件
1
|
log_rotation_size = 100MB
|
-- 单个日志文件的大小,默认10MB
-- 如果时间没有超过log_rotation_age,一个日志文件最大只能到设置的size大小,否则将新生成一个日志文件
-- 也可以设置为0,这样每次查询都会生成一个独立的文件
1
2
3
|
client_min_messages
log_min_messages
log_min_error_statement
|
--以上三个全部设置为log,将不再记录语句错误信息,更方便分析
1
|
log_min_duration_statement = ?
|
-- 设置?的值:
?= -1 不记录,
?= 0 记录所有执行语句和其执行时间,
?> 0 记录执行时间大于该毫秒数的语句和其执行时间
1
|
log_line_prefix = '%m %p %u %d %r '
|
-- 自定义额外的日志输出内容,这5个是最推荐的
-- 分别是:操作时间,用户名称,数据库名称,客户端IP和端口
1
|
log_timezone = 'Asia/Shanghai'
|
-- 设置该时区才能跟计算机电脑时间同步
1
|
lc_messages = 'UTF8'
|
-- 必须配置!这样日志输出才不会乱码
3、配置完成后重启服务。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://www.cnblogs.com/mrsoft/p/10267553.html