PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wo gibts postgresql-einsteigerdokus? - PostgreSQL Probleme ;-((


ceisserer
01-07-2002, 15:33
Servus!

Ich muss für die Schule gerade PHP und PostgreSQL machen, nur habe ich ernste Probleme PostgreSQL zum Laufen zu bringen.
Obwohl genug profi-dokus vorhanden sind, siehts für den Anfänger extrem schlecht aus.

Weis wer wo ich gute (wenn möglich deutsche) Einsteigerdokus zu PostgreSQL finde?
Oder kennt wer ein gutes grafisches Einrichtungs/Konfigurationstool für diese Datenbank?
Ist bei Verwendung mit mod_php von Apache irgendetwas spezielles zu beachten?

Ich habe folgende probleme:
Wenn ich einen user mit "createuser" anlegen will, sagt er mir, dass der name clemi (mein Loginname) nicht existiert. Hab mir das grafische postrgresql-tk installiert, was ansich ja ganz nett ist. gehe ich allerdings auf "new" im Menü, kommt folgende fehlermeldung: " Tcl-Fehler beim Ausführen von pg_exec create database s is not a valid postgresql connection".
Ich glaube dass ich mit einer guten doku alle meine Probleme lösen könnte, ich verstehe ja nicht mal das prinzip wie das alles funktioniert, habe also noch gar keine DB-Erfahrung...

Hoffe ihr könnt mir helfen, ich weiß wirklich gar nicht mehr wieter....

Mfg Linuxhippy

Christoph
01-07-2002, 17:44
> Weis wer wo ich gute (wenn möglich deutsche) Einsteigerdokus
> zu PostgreSQL finde?
>
Es gibt zwei deutsche Bücher zu Postgres: von Jens Hartwig
und Bruce Momjian. Das Buch von Hartwig ist m.E. besser.

> Wenn ich einen user mit "createuser" anlegen will, sagt er mir,
> dass der name clemi (mein Loginname) nicht existiert.
>
Useranlage ist im Kapitel 7 der Onlinedoku beschrieben.

Bin auch gerade dabei, User anzulegen und bei mir klappts.
Hast du denn createuser als DBA-User (je nach Distribution
"postgres" oder "postgresql") aufgerufen?

Christoph

ceisserer
01-07-2002, 18:36
Servus!

Danke vielmals für die Antwort!

Nun, ich hab mal nachgeschaut: Auf meinem System existiert eine Gruppe postres (aber kein User).
Mein normaler benutzername ist "mitglied" der gruppe postres.

Hier meine Fehlermeldung, wenn ich versuche einen User oder eine db anzulegen:
"pgsql: FATAL1: user "clemi" does not exist
createdb: database-createin failed //Hier kommt natürlich eine Fehlermeldung die an die Aufgabe angepasst wurde....

Was stimmt denn da nicht? Muss ich den name "clemi" irgendwo in eine Datei eintragen, damit postgres weiß, adss ich darauf zugreifen kann.
Die Doku schweigt sich zu meinem problem leider aus.

Ich hoffe, ich habe deine Geduld nicht allzuviel stapaziert und du kannst mir noch einmal helfen ,-)

Mfg Linuxhippy

Christoph
02-07-2002, 09:19
Das Problem ist, dass createdb psql aufruft und psql sich defaultmässig
mit der UserId des aktuellen Unix-Users anmeldet.

Dass es keinen User postgres gibt ist höchst merkwürdig.
Unter welchem User läuft denn der DB-Serverprozess "postmaster"?

Zum Useranlegen gibt es in deinem Fall zwei Möglichkeiten:

a) User clemi als DB-User mit DBA-Rechten (heisst bei Postgres "superuser") anlegen
Dann kannst du createdb als Unix-User "clemi" aufrufen.

b) DB-User nicht mit cretedb sondern aus psql mit CREATE USER ... anlegen.
Bei psql kannst du mit der Option -U den (DBA-)Usernamen angeben.

Erläuterung: DBA = "Data Base Administrator"

ceisserer
02-07-2002, 21:18
Mir wäre Version a.) lieber.

Hab meinen defaultuser unter dem ich createdb gemacht hab, i die Gruppe "postres" eingetragen. trotzdem funktionierts nicht.

Mal sehen, vieleicht finde ich was...

danke für deine Mühen, ohne dir haäät ich sicher schon aufgegeben ;-)

Mfg Linuxhippy

Christoph
03-07-2002, 20:10
> Hab meinen defaultuser unter dem ich createdb gemacht hab,
> in die Gruppe "postres" eingetragen.
> trotzdem funktionierts nicht.
>
Aha, da liegt das Missverständnis.
der User muss nicht als Unix-User sondern als Datenbank-User
in Postgres eingetragen sein.

Bitte lese dazu unbedingt das Kapitel
"Chapter 7. Database Users and Permissions"
des Administrators's Guide der PG-Doku!!

Wenn's den User clemi noch nicht gibt musst Du ihn erst neu
anlegen (auf SQL-Ebene mit CREATE USER). Dabei kannst Du ihm
direkt DBA-Rechte geben (siehe bei PG mitgelieferte Doku zum
Kommando CREATE USER).

Wenn's clemi schon als DB-User gibt, dann kannst du ihm
nachträglich DBA-Rachte geben mit ALTER USER.

CREATE und ALTER USER gehen natürlich nur von einem
DB-Account aus, der selber DBA-Rechte hat. Welche Accounts
es mit welchen Rechten gibt kannst du herausfinden mit
SELECT * FROM pg_users;

Christoph