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

lỗi với cơ sở dữ liệu postgresql:Máy chủ đang chạy cục bộ và chấp nhận các kết nối trên ổ cắm miền Unix /var/run/postgresql/.s.PGSQL.5432?

Quy ước cho PostgreSQL được đóng gói cho Debian hoặc các dẫn xuất Debian như Ubuntu là sử dụng /var/run/postgresql làm thư mục cho các ổ cắm miền Unix. Mặt khác, quy ước cho các libs ứng dụng khách postgres tự biên dịch là sử dụng /tmp , trừ khi tự định cấu hình theo cách khác.

Vì vậy, nguyên nhân gốc rễ thông thường của sự không khớp này giữa cả hai là sự kết hợp giữa nội dung phía máy khách tự biên dịch với các gói phía máy chủ được biên dịch trước (ngay cả khi máy khách và máy chủ được cài đặt trên cùng một máy, phía máy khách và phía máy chủ đều vẫn khác biệt và có thể không đồng bộ).

Liên kết mềm từ /tmp đến thư mục này theo đề xuất của người hỏi sẽ hoạt động ngoại trừ liên kết sẽ bị mất mỗi khi khởi động lại, vì nói chung /tmp được làm trống khi khởi động lại.

Một tùy chọn tốt hơn sẽ là thêm dưới dạng một mục nhập trong database.yml :

  • host: /tmp nếu đường dẫn ổ cắm thực là /tmp (máy chủ tự biên dịch, máy khách đóng gói)

  • hoặc host: /var/run/postgresql nếu đường dẫn socket thực /var/run/postgresql/ (máy chủ đóng gói, máy khách tự biên dịch).

Khi giá trị trong trường máy chủ lưu trữ bắt đầu bằng một ký tự gạch chéo, thư viện postgres biết rằng đó là vị trí của thư mục cho các ổ cắm cục bộ chứ không phải tên máy chủ. Tên tệp bên trong thư mục .s.PGSQL.portnumber được tạo và không được chỉ định, chỉ có thư mục.

Một khả năng khác là định cấu hình các gói phần mềm tự biên dịch càng chặt chẽ càng tốt với Debian, ghi đè các giá trị mặc định như chúng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao nó hoạt động khác với ~~ any ()?

  2. Cài đặt PL / Ruby trên PostgreSQL 9.3

  3. python 2.7 đến python 3.4 lỗi không được hỗ trợ loại toán hạng cho%:'byte' và 'dict'

  4. Truy vấn PostgreSQL để đếm / nhóm theo ngày và hiển thị các ngày không có dữ liệu

  5. Tạo một hàm trong Postgresql không trả về giá trị tổng hợp