Search Postgresql Archives

Re: Backing up and restoring a database with the SELinux pg_user problem.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Joseph Kiniry <kiniry@xxxxxxx> writes:
> As I said above, I have re-examined, and executed if necessary, by  
> hand, all sql commands in initdb and postgres.bki, but it seems that  
> pg_catalog is still screwed up.  Attempting to dump, or perform  
> several other actions results in failures of the form:

> ERROR:  42P01: relation "pg_user" does not exist
> LOCATION:  RangeVarGetRelid, namespace.c:193
> STATEMENT:  SELECT (SELECT usename FROM pg_user WHERE usesysid =  
> datdba) as dba\
> , pg_encoding_to_char(encoding) as encoding, datpath FROM pg_database  
> WHERE dat\
> name = 'gforge'

> So why can I see pg_user and yet pg_dump fails?

> gforge=# select * from pg_user;
> [ works ]

Hmm ... you manually recreated the pg_user view you say?  I wonder if
you mistakenly put it in the public schema instead of pg_catalog.
The quoted command from pg_dump is done after issuing
	set search_path = pg_catalog;
so that nothing user-created will accidentally mess it up.  If you
can still manually select from pg_user after issuing that same SET
command, then something is really seriously strange ...

If you find that indeed pg_user is in public, drop it there and
re-create it in pg_catalog.  You'll need to be superuser to do
that but I don't think it'll require any more pushups than that.

			regards, tom lane


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux