On Thu, Dec 1, 2016 at 12:16 PM, Juliano <jplinux@protonmail.com> wrote: > I tried to restore pg_catalog to my new database, but the existing > pg_catalog can't be overwritten or dropped, and postgres auto creates > pg_catalog when I create a new DB.
This is because, in general, pg_catalog is maintained by DML statements, restoring it is not going to do what you think.
I.e., if you create a table, a row goes into pg_class, but if you somehow manage to insert into pg_class a table is not properly created ( more things need to be done ).
Copying pg_catalog from one db to other is like trying to copy the root dir and FAT from one floppy ( how old fashioned ) to other, it cannot be done with normal tools and probably won't do what you think it does.
> So, there is a way to restore the pg_catalog to a new database?
Probably not, but this has the faint smell of http://xyproblem.info/ , what are you truing to achieve by doing that? Francisco Olarte.