Tôi đang chạy một ứng dụng rails đang được phát triển với postgresql 9.3. Khi tôi cố gắng khởi động máy chủ hành khách ngày hôm nay, tôi đã nhận được:
PG::ConnectionBad - could not connect to server: Connection refused
Is the server running on host "localhost" (217.74.65.145) and accepting
TCP/IP connections on port 5432?
Không có vấn đề lớn tôi nghĩ, điều đó đã xảy ra trước đây. Khởi động lại postgres luôn giải quyết vấn đề. Vì vậy, tôi đã chạy sudo service postgresql restart
và nhận được:
* Restarting PostgreSQL 9.3 database server
* The PostgreSQL server failed to start. Please check the log output:
2014-06-11 10:32:41 CEST LOG: could not bind IPv4 socket: Cannot assign requested address
2014-06-11 10:32:41 CEST HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
2014-06-11 10:32:41 CEST WARNING: could not create listen socket for "localhost"
2014-06-11 10:32:41 CEST FATAL: could not create any TCP/IP sockets
...fail!
postgresql.conf
Điểm của tôi đến mặc định: localhost
và cổng 5432
. Tôi đã thử thay đổi cổng nhưng thông báo lỗi là như nhau (ngoại trừ thay đổi cổng).
Cả hai ps aux | grep postgresql
và ps aux | grep postmaster
không trả lại gì cả.
BIÊN TẬP:
Trong postgresql.conf
tôi đã thay đổi listen_addresses
thành 127.0.0.1
thay vì localhost
và nó đã thực hiện thủ thuật, máy chủ đã khởi động lại. Tôi cũng đã phải chỉnh sửa cấu hình db của ứng dụng và trỏ đến 127.0.0.1
thay vì localhost
. Tuy nhiên, câu hỏi là bây giờ, tại sao localhost được coi là 217.74.65.145
và không 127.0.0.1
?
Đó là của tôi /etc/hosts
:
127.0.0.1 local
127.0.1.1 jacek-X501A1
127.0.0.1 something.name.non.example.com
127.0.0.1 company.something.name.non.example.com
example.com
làm tên miền.
sudo netstat -anlp | grep 5432
nào?