PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Không thể kết nối với PostgreSQL cục bộ

Điều này thực sự trông giống như một lỗi quyền đối với tệp. Các ổ cắm miền Unix là các tệp và có quyền của người dùng giống như bất kỳ ổ cắm nào khác. Có vẻ như người dùng OSX cố gắng truy cập cơ sở dữ liệu không có quyền truy cập tệp socket. Để xác nhận điều này, tôi đã thực hiện một số thử nghiệm trên Ubuntu và psql để cố gắng tạo ra cùng một lỗi (bao gồm bên dưới).

Bạn cần kiểm tra các quyền trên tệp socket và các thư mục của nó /var/var/pgsql_socket . Ứng dụng Rails của bạn (người dùng OSX) phải có quyền thực thi (x) trên các thư mục này (tốt nhất là cấp quyền cho mọi người) và socket phải có đầy đủ quyền (wrx). Bạn có thể sử dụng ls -lAd <file> để kiểm tra những thứ này và nếu bất kỳ cái nào trong số chúng là một liên kết tượng trưng, ​​bạn cần kiểm tra tệp hoặc tìm đường dẫn liên kết đến.

Bạn có thể tự mình thay đổi các quyền trên dir, nhưng socket được định cấu hình bởi postgres trong postgresql.conf . Điều này có thể được tìm thấy trong cùng một thư mục với pg_hba.conf (Bạn sẽ phải tìm ra cái nào). Khi bạn đã đặt các quyền, bạn sẽ cần khởi động lại postgresql.

# postgresql.conf should contain...
unix_socket_directory = '/var/run/postgresql'       # dont worry if yours is different
#unix_socket_group = ''                             # default is fine here
#unix_socket_permissions = 0777                     # check this one and uncomment if necessary.

CHỈNH SỬA:

Tôi đã thực hiện một tìm kiếm nhanh trên google mà bạn có thể muốn xem xét xem nó có bị phá vỡ hay không. Điều này có thể dẫn đến bất kỳ nỗ lực nào để find tệp cấu hình của bạn không thành công.

http://www.postgresqlformac.com/server/howto_edit_postgresql_confi.html

Thông báo lỗi:

Không tìm thấy người dùng trong pg_hba.conf

psql: FATAL:  no pg_hba.conf entry for host "[local]", user "couling", database "main", SSL off

Người dùng không xác thực được mật khẩu:

psql: FATAL:  password authentication failed for user "couling"

Thiếu tệp ổ cắm unix:

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

Ổ cắm Unix tồn tại, nhưng máy chủ không lắng nghe nó.

psql: could not connect to server: Connection refused
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Quyền đối với tệp không hợp lệ trên tệp ổ cắm unix :

psql: could not connect to server: Permission denied
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách liệt kê Cơ sở dữ liệu và Bảng trong PostgreSQL bằng psql

  2. Heroku Postgres:psql:FATAL:không có mục nhập pg_hba.conf cho máy chủ

  3. PostgreSQL:Loại dữ liệu nào nên được sử dụng cho Tiền tệ?

  4. Có gì mới trong Postgres-XL 9.6

  5. lỗi lệnh sử dụng alembic không thể tìm thấy mã định danh