"Bethany A.Benzur" <bethany.benzur@oit.gatech.edu> writes:
> I have been running postgres for quite some time with this problem:
> whenever a user logs in or issues almost any command in the "psql"
> client, they get this error:
> -bash-2.05b$ psql
> ERROR: Relation "pg_user" does not exist
Hmmm ... I'm wondering about version mismatches between your psql and
your backend. Does "psql -V" agree with the backend version?
> At first I thought it had something to do with my using ident
> authentication, but after some research it seems my "template1"
> database is corrupt and missing some pretty essential elements. If I
> could just build a new template1 or run initdb again, everything might
> be OK... but the problem here is that there isn't much I can do without
> being able to use pg_dump to export/backup my databases first!!
You can rebuild template1 from template0 (... that's pretty much why
template0 exists...). There are some gotchas in this process, see this
link for a walkthrough:
http://techdocs.postgresql.org/techdocs/pgsqladventuresep1.php
However, I am not totally convinced that that's where your problem is.
Do you see failures when you are connected to other databases besides
template1?
regards, tom lane