我收到错误
FATAL: could not create lock file "postmaster.pid": Permission denied
Run Code Online (Sandbox Code Playgroud)
当试图执行命令
pg_ctl restart --pgdata "D:\Program Files\PostgreSQL\8.3\data"
Run Code Online (Sandbox Code Playgroud)
postgres用户对D:\,D:\ Program Files \,D:\ Program Files\PostgreSQL \和D:\ Program Files\PostgreSQL\8.3\data的完全权限已设置.我还需要做什么?
DSb*_*ard 14
我将对D:\ Program Files\PostgreSQL\8.3\data的完全访问权限设置为Users组,现在它可以正常工作.详细信息请访问 http://forumserver.twoplustwo.com/114/pokertracker/cant-connect-db-422617/ (上一篇文章).
小智 8
您需要确保用户postgres对postgresql.conf文件中配置的postgres data_directory具有写权限。就我而言,/var/lib/postgresql/9.5/main/如果不添加权限,请执行以下操作:
chmod u+w /var/lib/postgresql/9.5/main/
Run Code Online (Sandbox Code Playgroud)
您必须确保用户postgres有权编写和执行/ var/run/postgresql
sudo chmod 765 /var/run/postgresql
sudo chown postgres /var/run/postgresql
Run Code Online (Sandbox Code Playgroud)
由于安装了postgres-xc,我遇到了这个问题,解决方法是删除它.
pg_ctl是用于启动/停止/ etc postgres的最常见(和推荐)方式.
出于某种原因,它不是我的postgres安装的一部分.
在一点点后,我安装了postgre-xc,其中包括pg_ctl.
postgres-xc将/ var/run/postgresql的所有者从postgres更改为postgres-xc.
这引起了许多关于无法锁定pid文件的麻烦和警告.
所以,我删除了postgres-xc(并将/ var/run/postgresql的所有者恢复为postgres).
而不是使用pg_ctl,我使用控制postgres
service postgresql status
或
/etc/init.d/postgresql status.
希望这会对某人有所帮助.
小智 5
postgresql service已登录NETWORK SERVICE,因此您必须需要使数据目录(即:)"D:\Program Files\PostgreSQL\8.3\data"完全控制NETWORK SERVICE组。
| 归档时间: |
|
| 查看次数: |
32537 次 |
| 最近记录: |