Postgresql Psql无法连接到服务器:没有这样的文件或目录,5432错误?
我正试图在我的Vagrant机器上运行Postgresql Psql无法连接到服务器:没有这样的文件或目录,5432错误?,postgresql,vagrant,Postgresql,Vagrant,我正试图在我的Vagrant机器上运行psql,但出现以下错误: psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? 注:流浪汉1.9.2 方框:ubuntu/trusty64 编辑 我用于安装
psql
,但出现以下错误:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting connections on
Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
注:流浪汉1.9.2
方框:ubuntu/trusty64
编辑
我用于安装和运行postgres的命令:
sudo-apt-get-update
sudo apt get install postgresql
sudo su postgres
psql-d postgres-U postgres
/etc/postgresql/9.6/main/postgresql.conf
是否显示分配的端口?在我默认的Xubuntu Linux安装中,出于某种原因,我的显示为port=5433,这是我记忆中最清楚的,但我确实注释掉了同一文件中的一行,该行说listen\u addresses='localhost'
,并取消注释了该行listen\u addresses='*'
。所以也许可以开始检查一下。希望能有所帮助。我也遇到了同样的问题,与pg_hba.conf文件的配置有关(位于/etc/postgresql/9.6/main
)。请注意,9.6是我正在使用的postgresql版本
错误本身与postgresql的错误配置有关,这会导致服务器在启动前崩溃
我建议遵循以下说明:
sudo服务postgresql start
pglsu集群
pg_ctlcluster start
,因此在我的情况下,使用9.6版和集群“main”,它将是pg_ctlcluster 9.6 main start
/var/log/postgresql/postgresql--main.log
上访问,因此在我的例子中,完整的命令将是sudo nano/var/log/postgresql/postgresql-9.6-main.log
2017-07-13 16:53:04 BRT[32176-2]上下文:配置文件/etc/postgresql/9.5/main/pg_hba.conf的第90行“
2017-07-13 16:53:04 BRT[32176-3]致命:无法加载pg_hba.conf
sudo-service-postgrestart
重新启动postgresql服务,一切正常祝你好运 打开数据库管理器并执行此脚本
update pg_database set datallowconn = 'true' where datname = 'your_database_name';
我在VM中创建SQL db时也遇到了同样的错误。我已经将/etc/postgresql/9.3/main/postgresql.conf
shared_buffers=200MB
的默认值更改为我总RAM的75%。嗯,我忘了在虚拟机中实际分配RAM。当我发出创建新数据库的命令时,我收到了相同的错误
关闭电源,给婴儿奶瓶(公羊)和普雷斯托,它工作了 同样的事情发生在我身上,因为我更改了
/etc/hosts
文件中的某些内容。在将其更改回127.0.0.1 localhost之后,它对我很有效。我只是为那些像我发现这个问题时那样感到失落和绝望的人发布这篇文章。有时,通过编辑一些psotgresql相关的配置文件,可能会意外更改文件的权限:
请注意pg_hba.conf如何属于root,用户甚至无法读取它。这会导致postgres无法打开此文件,因此无法启动服务器,引发原始问题中出现的错误
通过运行
sudo chmod +r pg_hba.conf
我能够让postgres用户再次访问这个文件,然后在运行之后
sudo service postgresql start
能够让服务器重新运行。我也遇到了同样的问题,但这里的答案都没有帮助。
我如何修复它(mac)
- 尝试使用
pg_ctl-D/usr/local/var/postgrestart启动postgresql
- 查找错误消息,该消息显示类似
致命:无法打开目录“pg_tblspc”:没有此类文件或目录
- 创建丢失的目录
mkdir/usr/local/var/postgres/pg\u tblspc
- 从第一步开始重复,直到创建了所有缺少的目录
- 完成后,再次尝试启动postgresql时,可能会说
FATAL:lock文件“postmaster.pid”已经存在
- 删除postmaster.pid:
rm/usr/local/var/postgres/postmaster.pid
- 开始postgres时使用:
pg_ctl-D/usr/local/var/postgrestart
- 完成✨李>
只需使用直接版本sudo apt get install postgresql-9.5重新安装您的pgsql(您必须在安装新程序包之前删除该程序包)警告:这将删除数据库
使用命令:
rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8
警告:这将删除数据库
在zsh内:
rm-rf/usr/local/var/postgres&&initdb/usr/local/var/postgres-E utf8
经过无数个小时的故障排除,这是唯一对我有效的方法。我通过运行以下命令解决了问题:
sudo systemctl start postgresql@9.5-main
这对我很有用:
pg_ctl -D /usr/local/var/postgresql@9.6 stop;
brew services stop postgresql@9.6;
brew services start postgresql@9.6;
当我从上一个pg_basebackup文件还原数据库时,出现了这个错误。之后,当我尝试连接数据库(psql)时,我得到了相同的错误。当我更新pg_hba.conf文件时,无论哪里有“对等”身份验证,我都将其替换为“md5”,然后重新启动postgres服务。在那之后,t
lsof -i | grep 'post'
psql -U postgres -p "port_in_use"
psql: could not connect to server: No such file or directory
Is the server running locally and accepting connections on
Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
brew services stop postgresql@11
brew services start postgresql@11
brew services stop postgresql@12
brew services start postgresql@12
brew postgresql-upgrade-database
rm /usr/local/var/postgres/postmaster.pid
brew services restart postgresql
brew postgresql-upgrade-database
FATAL: could not load server certificate file "/etc/ssl/certs/ssl-cert-snakeoil.pem": No such file or directory
LOG: database system is shut down
pg_ctl: could not start server