Export von Usern in anderes pgsql-System

Hallo liebe Community,

ich würde gerne auf zwei verschiedenen Systemen die gleichen Nutzer anlegen. Für ein paar wenige kann man das ja noch manuell erledigen, aber ab einer gewissen Anzahl wirds natürlich schwierig das zu pflegen.
Gibt es eine Möglichkeit die System-Tabellen wo Nutzer definiert sind zu exportieren und im anderen System wieder zu importieren, so dass beide Systeme identische Nutzerkonten mit entsprechenden Passwörtern aufweisen?
Ich bräuchte diese Kombination da wir unsere DB doppeln und eine als Testsystem laufen lassen wollen?

Danke für die Hilfe,

Christian

Ich bin mir da jetzt nicht wirklich sicher, aber:

da PG die User ja zur Anmeldung braucht und bei der Anmeldung keine Connection besteht, speichert es das in einer extra Datei. Offensichtlich in data_directory/base/pg_auth. Vielleicht kannst Du einfach, bei nicht laufender DB, ihm diese unterjubeln.

Ohne Garantie, Backup und so, klar, oder?

Andreas

Ich glaub, die Idee ist nicht gut. Besser ist vielleicht:

pg_dump -t pg_authid

Und diese wieder einspielen. Evtl. pg_dump mit -a, mit nur einen data-dump zu machen.


Andreas

hmmm,
ich bezweifle aber leider dass in der pg_authid nicht alle Informationen stehen die benötigt werden. Wenn ich mir den View pg_user anschauen zieht er hier Infos von weiteren Tabellen. Ebenso ist in pg_auth keine Info zur Gruppenzugehörigkeit abgelegt.
Also evtl. doch erstere Methode?
Oder ist es möglich das komplette Datenverzeichnis (in meinem Fall /data/pgsql) zu kopieren und auf dem Klonrechner dann die DB neu zu starten?

Christian

Also wenn ich mir die Definition von pg_user anschaue, sehe ich nur pg_authid. Das Problem dürfte aber sein, daß die OID der dort hinterlegten User als Schlüssel in anderen Tabellen dient. Von daher wird es wohl gar nicht gehen, die User separat von einer in die andere DB zu übernehmen.

Danke an dys und f3ew im #postgresql, mit denen ich darüber sprach.

Und wenn Du das Datenverz. kopieren willst, kannst Du auch gleich einen kompletten Dump fahren, oder?


Andreas

ok, ich hab die Lösung wohl gefunden :smiley: :
pg_dumpall -g liefert nur die Systemtabellen. Wenn ich mir den Export dann anschaue sind nur die Nutzer und Gruppenzugehörigkeiten verzeichnet. Das sollte dann ja funktionieren wenn ich zuerst die Benutzer und dann die Daten importiere.

Vielen Dank für die schnellen Antworten

Christian

Oh, manchmal ist die Lösung einfacher als das Problem…

Andreas, Danke für die Rückinfo.