Обсуждение: re-create information_schema

Поиск
Список
Период
Сортировка

re-create information_schema

От
Ray Stell
Дата:
on rebuilding the information_schema:
http://www.postgresql.org/docs/9.1/static/release-9-1-2.html
...
Since the view definition is installed by initdb, merely upgrading will
not fix the problem. If you need to fix this in an existing installation,
you can (as a superuser) drop the information_schema schema then re-create
it by sourcing SHAREDIR/information_schema.sql. (Run pg_config --sharedir
if you're uncertain where SHAREDIR is.) This must be repeated in each
database to be fixed.


The right thing to do here is drop cascade, correct?  No harm done with
that?

doodah=# drop schema information_schema;
ERROR:  cannot drop schema information_schema because other objects depend on it
DETAIL:  table information_schema.sql_sizing_profiles depends on schema information_schema
table information_schema.sql_sizing depends on schema information_schema
...
view information_schema.check_constraint_routine_usage column constraint_name depends on type
information_schema.sql_identifier
and 138 other objects (see server log for list)
HINT:  Use DROP ... CASCADE to drop the dependent objects too.

Thanks.

Re: re-create information_schema

От
Ray Stell
Дата:
On Wed, Feb 29, 2012 at 03:55:13PM -0500, Ray Stell wrote:
> http://www.postgresql.org/docs/9.1/static/release-9-1-2.html
> This must be repeated in each
> database to be fixed.

including postgres, template0, and template1?

Re: re-create information_schema

От
Peter Eisentraut
Дата:
On ons, 2012-02-29 at 16:25 -0500, Ray Stell wrote:
> On Wed, Feb 29, 2012 at 03:55:13PM -0500, Ray Stell wrote:
> > http://www.postgresql.org/docs/9.1/static/release-9-1-2.html
> > This must be repeated in each
> > database to be fixed.
>
> including postgres, template0, and template1?

Yes, if you want those databases to be fixed.


Re: re-create information_schema

От
Ray Stell
Дата:
On Sat, Mar 03, 2012 at 08:27:19PM +0200, Peter Eisentraut wrote:
> On ons, 2012-02-29 at 16:25 -0500, Ray Stell wrote:
> > On Wed, Feb 29, 2012 at 03:55:13PM -0500, Ray Stell wrote:
> > > http://www.postgresql.org/docs/9.1/static/release-9-1-2.html
> > > This must be repeated in each
> > > database to be fixed.
> >
> > including postgres, template0, and template1?
>
> Yes, if you want those databases to be fixed.


A trick with template0, or so it seems:

template1=# select datname, datallowconn from pg_database;
  datname  | datallowconn
-----------+--------------
 template1 | t
 template0 | f
 postgres  | t
 rd        | t
(4 rows)