Я запускаю додаток для рейок у розробці з postgresql 9.3. Коли я спробував запустити пасажирський сервер сьогодні, я отримав:
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?
Я не думав, що це було раніше. Перезапуск постгресів завжди вирішував проблему. Тому я побіг sudo service postgresql restartі дістав:
* 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вказівки на значення за замовчуванням: localhostі порт 5432. Я спробував змінити порт, але повідомлення про помилку таке ж (крім зміни порту).
І те, ps aux | grep postgresqlі ps aux | grep postmasterнічого не повертають.
Редагувати:
В postgresql.confя змінив listen_addressesдо 127.0.0.1а localhostй зробив трюк, сервер перезавантажений. Я також повинен був відредагувати конфігурацію db моїх програм і вказати на, 127.0.0.1а не на localhost. Однак зараз питання, чому місцевий хост вважається таким, 217.74.65.145а ні 127.0.0.1?
Це моє /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як доменне ім’я.
sudo netstat -anlp | grep 5432?