2017-03-07 16 views
11

Tôi đang cố gắng để chạy psql trên máy Vagrant của tôi, nhưng tôi nhận được lỗi này:Psql không thể kết nối với máy chủ: Không có tệp hoặc thư mục như vậy, lỗi 5432?

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"? 

Lưu ý: Vagrant 1.9.2 Box: ubuntu/trusty64, https://atlas.hashicorp.com/ubuntu/boxes/trusty64

EDIT Commands Tôi đã sử dụng để cài đặt và chạy postgres:

  • sudo apt-get update
  • sudo apt-get install postgresql
  • sudo su postgres
  • psql -d postgres -U postgres
+0

Bạn đã sửa lỗi này chưa? –

Trả lời

26

Tôi đã gặp sự cố tương tự này, liên quan đến cấu hình tệp pg_hba.conf của tôi (nằm ở /etc/postgresql/9.6/main). Xin vui lòng không phải là 9.6 là phiên bản postgresql tôi đang sử dụng.

Lỗi chính nó liên quan đến cấu hình sai của postgresql, khiến máy chủ bị lỗi trước khi bắt đầu.

tôi sẽ đề nghị làm theo các hướng dẫn:

  1. Xác nhận rằng dịch vụ postgresql đang chạy, sử dụng sudo service postgresql start
  2. Run pg_lsclusters từ thiết bị đầu cuối của bạn
  3. Kiểm tra cụm bạn đang chạy là gì, đầu ra nên như sau:

    Phiên bản - Tình trạng cổng cụm Chủ sở hữu Dữ liệu thư mục

    9.6 ------- chính - 5432 postgres trực tuyến /var/lib/postgresql/9.6/main

    Disregard the '---' signs, as they are being used there only for alignment. The important information are the version and the cluster. You can also check whether the server is running or not on the status column.

  4. Sao chép thông tin từ các phiên bản và các cụm, và sử dụng như sau: pg_ctlcluster <version> <cluster> start Vì vậy, trong trường hợp của tôi, sử dụng phiên bản 9.6 và cụm 'chính', nó sẽ là pg_ctlcluster 9.6 main start
  5. Nếu có điều gì sai, sau đó postgresql sẽ tạo nhật ký, có thể truy cập trên /var/log/postgresql/postgresql-<version>-main.log, vì vậy trong trường hợp của tôi, lệnh đầy đủ sẽ là sudo nano /var/log/postgresql/postgresql-9.6-main.log.
  6. Đầu ra sẽ hiển thị lỗi là gì.

    2017-07-13 16:53:04 BRT [32176-1] LOG: invalid authentication method "all"
    2017-07-13 16:53:04 BRT [32176-2] CONTEXT: line 90 of configuration file "/etc/postgresql/9.5/main/pg_hba.conf"
    2017-07-13 16:53:04 BRT [32176-3] FATAL: could not load pg_hba.conf

  7. Khắc phục lỗi và khởi động lại dịch vụ postgresql qua sudo service postgresql restart và nó sẽ ổn.

Tôi đã tìm kiếm rất nhiều để tìm thấy điều này, tín dụng đi đến số này post.

Chúc bạn may mắn!

2

Liệu /etc/postgresql/9.6/main/postgresql.conf thấy cổng được giao? Trên bản cài đặt Xubuntu Linux mặc định của tôi, tôi đã giới thiệu cổng = 5433 vì một số lý do tốt nhất mà tôi có thể nhớ, nhưng tôi đã bình luận ra dòng trong cùng một tệp cho biết listen_addresses = 'localhost' và không được chú ý dòng listen_addresses = '*'. Vì vậy, có thể bắt đầu và kiểm tra ở đó. Hy vọng rằng sẽ giúp.

0

Mở quản lý cơ sở dữ liệu của bạn và thực hiện kịch bản này

update pg_database set datallowconn = 'true' where datname = 'your_database_name'; 
0

tôi đã có lỗi tương tự khi tôi tạo db SQL trong một VM. Tôi đã thay đổi giá trị mặc định của /etc/postgresql/9.3/main/postgresql.conf shared_buffers = 200MB thành 75% tổng số RAM của tôi. Vâng, tôi quên thực sự phân bổ RAM đó trong máy ảo. Khi tôi đưa ra lệnh để tạo một cơ sở dữ liệu mới, tôi đã nhận được lỗi tương tự.

Tắt nguồn, cho bé bú (RAM) và mau, nó hoạt động.

0

Điều tương tự cũng xảy ra với tôi khi tôi đã thay đổi nội dung nào đó trong tệp /etc/hosts. Sau khi thay đổi nó trở lại 127.0.0.1 localhost nó đã làm việc cho tôi.

Các vấn đề liên quan