我从digitalocean安装了posgresql,并在安装结束时在终端中输出以下命令
/usr/lib/postgresql/10/bin/pg_ctl -D /var/lib/postgresql/10/main -l logfile start
我尝试使用sudo root
用户运行它,并切换到postgres
用户,但错误地给了我
等待服务器启动.... / bin / sh:1:无法创建日志文件: 权限被拒绝停止等待pg_ctl:无法启动服务器 但当我检查它所说的状态时 ●postgresql.service - PostgreSQL RDBMS加载:已加载 (/lib/systemd/system/postgresql.service; enabled;供应商预设: 启用)活动:从星期四2018-05-31 13:11:18 UTC开始激活(退出); 56s ago Main PID:3698(code = exited,status = 0 / SUCCESS) 任务:0(限制:2362)CGroup:/system.slice/postgresql.service
May 31 13:11:18 staging systemd 1:启动PostgreSQL RDBMS ... May 31 13:11:18 staging systemd 1:启动了PostgreSQL RDBMS。
状态未运行,除了exited
。以上命令的作用以及如何运行它?我没有在以前的版本中遇到过它
答案 0 :(得分:0)
您的想法是提供实际的日志文件而不是logfile
,但我建议您在postgresql.conf
中正确配置日志记录,并在没有pg_ctl
选项的情况下使用-l
logging_collector
设为on
。log_filename
设为postgresql-%a.log
。log_rotation_size
设为0。log_truncate_on_rotation
设为on
。然后,您将获取PostgreSQL数据目录的log
子目录中的日志文件,它们将每周轮换一次。