Eu tenho um servidor postgres local em execução (no Ubuntu Linux). Está escutando através de um arquivo de soquete:
$ ls -la /var/run/postgresql/
total 8
drwxrwsrwx 2 postgres postgres 100 2011-04-15 19:06 .
drwxr-xr-x 26 root root 1100 2011-04-15 19:12 ..
-rw------- 1 postgres postgres 5 2011-04-15 19:06 8.4-main.pid
srwxrwxrwx 1 postgres postgres 0 2011-04-15 19:06 .s.PGSQL.5433
-rw------- 1 postgres postgres 34 2011-04-15 19:06 .s.PGSQL.5433.lock
Eu posso conectar-me ao servidor bem na linha de comando:
$ psql -d gis -U rory
psql (8.4.7)
Type "help" for help.
gis=# \q
$ psql -d gis
psql (8.4.7)
Type "help" for help.
gis=# \q
Estou tentando usar o osm2pgsql , um aplicativo do Projeto OpenStreetMap , que importa dados para um banco de dados pgsql.
No entanto, o erro que recebo é:
$ ./osm2pgsql/osm2pgsql -m -d gis -U rory ../data.osm.bz2
osm2pgsql SVN version 0.70.5
Connection to database failed: 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"?
Notavelmente, ele está tentando usar o arquivo de soquete .s.PGSQL.5432
, que não existe, enquanto o nome do arquivo real do soquete é .s.PGSQL.5433
, os nomes dos arquivos são quase exatamente os mesmos.
Por que está usando o nome de arquivo incorreto e como faço para usar o correto?