Maik
31. Juli 2006 um 09:14
1
Hallo zusammen,
ich versuche mich wie folgt mit einem Python-Script mit einer DB zu verbinden.
import pg
db = pg.connect(dbname='devel', host='localhost', user='maik')
maik ist Superuser. Bevor ich mein System neu aufgesetzt habe hatte das funktioniert, Jetzt bekomme ich folgende Fehlermeldung:
Traceback (most recent call last):
File "radolan_66_v1.py", line 6, in ?
db = pg.connect(dbname='devel', host='localhost', user='maik')
pg.InternalError: fe_sendauth: no password supplied
Ich poste hier im PostgreSQL-Forum da ich davon ausgehe, dass das Problem nicht bei Python liegt.
Vielleicht kann mir ja jemand helfen.
Danke schonmal im Voraus.
hi,
geb halt das passwort des users mit an. ohne passwort geht es einfach nicht. steht ja auch in der meldung.
evtl war vor der einrichtung das connecten von localhost mit dem option trust (siehe pg_hba.conf) realisiert…
cu tb.
Maik
31. Juli 2006 um 09:31
3
Ok,
ich habe das jetzt ausprobiert. Allerdings akzeptiert er das Passwort nicht.
db = pg.connect(dbname='devel', host='localhost', user='maik', passwd='xyz')
pg.InternalError: FATAL: Passwort-Authentifizierung für Benutzer »maik« fehlgeschlagen
Das Passwort stimmt definitiv. Ich habe jetzt extra die DB nochmal neu ertsellt um es zu testen. Aber das Resultat ist das gleiche.
hm, ich kenn mich jetzt nicht mit python aus und kann dir deshalb auch nicht sagen was los ist. aber du bist dir ganz sicher das das passwort stimmt?
du kannst ja mal für testzwecke bei localhost die authentifizierung auf trust setzen und schauen was passiert…
cu tb.
Maik
31. Juli 2006 um 10:50
5
Ich habe jetzt mal die pg_hba.conf editiert. Allerdings bin ich mir nicht ganz sicher wie das ganze aussehen muss. Vielleicht kannst du ja mal drüberschauen? Muss ich die DB neu hochfahren, damit das aktiv wird oder reicht ein “pg_ctl reload”?
# Database administrative login by UNIX sockets
local all all trust
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Maik
31. Juli 2006 um 11:17
6
Ich habe jetzt einfach mal alles auf trust gesetzt und die DB neu gestartet. Jetzt funktioniert es. Das mit dem Passwort, kann das an md5 liegen?