erster login?

ich habe postgres-8.1 aus dem debian-repository mit apt-get installiert - das läuft im prinzip auch ganz prima, nur kann ich leider keinen user erstellen:

su postgres
$ createuser -P -p -d -h localhost -p 5432 gnoerz
Enter password for new role:
Enter it again:
Shall the new role be a superuser? (y/n) y
Password:
Password:
createuser: could not connect to database postgres: FATAL: password authentication failed for user “postgres”

versuche ich es über den socket, krieg ich keinen connect:

su postgres
$ createuser -P -p -d gnoerz
Enter password for new role:
Enter it again:
Shall the new role be a superuser? (y/n) y
createuser: could not connect to database postgres: 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.0”?

in /var/run/postgresql hab ich nur .s.PGSQL.5432 - sonst nix.

postgresql.conf sagt:

listen_addresses = ‘*’

port = 5432

max_connections = 100
#superuser_reserved_connections = 2
unix_socket_directory = ‘/var/run/postgresql’
unix_socket_group = ‘’
unix_socket_permissions = 0777

- Security & Authentication -

#authentication_timeout = 60 # 1-600, in seconds
ssl = false
#password_encryption = on
#db_user_namespace = off

Hat jemand eine Idee, was ich falsch mache?
Warum kann ich nicht auf den socket connecten?
Welches Passwort hat “postgresql” auf TCP 5432 ??

Für jeden Tipp dankbar,

Thomas

Hallo Thomas,

als Du die Datenbank angelegt hast, wurden 2 User angelegt, der eine heißt “Postgre” und ein zweiter, bei dem du nach Namen und Passwort gefragt worden bist.

“Postgre” ist der User auf deinem Betriebssystem, unter dem PostgreSQL läuft. Eine Besonderheit von PostgreSQL ist dass aus Sicherheitsgründen für den Admin auf der Datenbank ein 2. User angegeben werden muss. Dessen Namen und Password muss Du beim Einloggen in die Datenbank angeben. Ohne diese Angaben steht Du also vor der Tür und kommst nicht hinein. Danach kannst Du beliebig viele weitere User anlegen.

Die Installation von phpPGAdmin oder PGAdmin könnte Deinen Einstieg in die Datenbank erleichtern.



mfg

fristo

Hi,

zudem kannst du auch provisorisch pg_hba.conf folgende Einstellung machen:

host all all 127.0.0.1/32 trust

Damit kannste dich dann lokal ohne Passwort dich einloggen und ein anderes passwort setzen wie auch benutzer anlegen.
Danach würde ich es auch auf md5 umstellen (statt “trust”->“md5”)

Gruß

Hi,

auch ich versuche hier die “erste Connection” - über pgAdmin III.
Server und Client habe ich über das Ubuntu-Repository installiert. Es wurde ein Linux-User “postgres” angelegt, dem ich (nach der Installation) auch ein Paßwort gegeben habe.

Nun habe ich im pgAdmin III-Anmeldedialog aber schon alles ausprobiert (die User und Paßwörter existieren unter Linux und haben teilweise auch Superuser-Rechte):

Mit korrektem Paßwort gibt es die Meldung

password authentication failed for user “robert”

, ohne angegebenes Paßwort die Meldung

fe_sendauth: no password supplied

.

In der pg_hba.conf habe ich eingetragen / geändert:

Database administrative login by UNIX sockets

local all postgres ident sameuser
local all robert ident sameuser

TYPE DATABASE USER CIDR-ADDRESS METHOD

“local” is for Unix domain socket connections only

local all all trust #ident sameuser

IPv4 local connections:

host all all 127.0.0.1/32 trust #md5

IPv6 local connections:

host all all ::1/128 trust #md5

Muß ich den Datenbankserver neu starten, damit er die Einstellungen “frißt”? (Ich weiß nicht, wie :-().

  • Na ja, für jede Hilfe bin ich wirklich dankbar. Und sorry, daß ich so ein Newbie bin - T-SQL (SQL Server) kann ich aber. :wink: Habe auch die Benachrichtigungsfunktion an, und so schwer wird das ja wohl nicht sein. :slight_smile:

Danke
Robert

Die Linux User haben nichts mit denen in der Datenbank zu tun. Dort musst du mit ‘CREATE USER’ die jeweils benötigten User noch einmal anlegen.

Danke für die Antwort.

Bei der Installation wird ein User postgres angelegt. Das Paßwort ist - und das wußte ich nicht - postgres.