"Milen Kulev" <makulev@xxxxxxx> writes: > Hi Wiliam, > Than you very much for your prompt reply. > > I can not understand why pg_dump, pg_dumpall have hard-coded "template0" ? The reason is this: any extra stuff that your database inherited from template1 (or whatever template you used) will be dumped out as part of your database. There is no way to for pg_dump to tell what parts came from template1 and what parts were added afterward, so it bases its dump on template0, which is a minimal database. If you based your restored database on template1, you would get collisions as the restore tried to add objects that were already there from template1. Make sense? -Doug