Re: Add pre-existing tablespace to new installation

Поиск
Список
Период
Сортировка
От Tino Schwarze
Тема Re: Add pre-existing tablespace to new installation
Дата
Msg-id 20090609141710.GC27075@easy2.in-chemnitz.de
обсуждение исходный текст
Ответ на Re: Add pre-existing tablespace to new installation  (Roland Hughes <roland@logikalsolutions.com>)
Ответы Re: Add pre-existing tablespace to new installation  (Roland Hughes <roland@logikalsolutions.com>)
Список pgsql-admin
On Tue, Jun 09, 2009 at 09:10:20AM -0500, Roland Hughes wrote:
> On Tuesday 09 June 2009 08:55:18 am Tino Schwarze wrote:
> > On Tue, Jun 09, 2009 at 07:57:34AM -0500, Roland Hughes wrote:
> > > This has not been the case with 64-bit OpenSuSE.  A fresh re-install of
> > > the OS required I recreate the database from backup.  Postgres would NOT
> > > recognize or salvage the directory on a TB drive containing tablespace.
> >
> > I doubt that. What do you call a "fresh install"? The OpenSUSE packages
> > will not touch your tablespace (in Postgres' home directory,
> > /var/lib/pgsql IIRC) if it already exists.
>
> "Fresh Install" means shiny new root volume.

Ok.

> > If you re-format your root
> > volume, then you loose your data - that's what it is supposed to do.
> > If you added tablespaces (as symlinks or mountpoints within Postgres'
> > data directory), they will become useless after a "fresh install" if you
> > lose your Postgres' data directory during the process.
> >
> > You just need to preserve everything from Postgres' data directory
> > (which shouldn't be much data).
>
> While it shouldn't be much data, it is also non-robust.  With robust
> databases, you can create as many databases as you want in as many places as
> you want.  A "fresh install" means that you only have to "tell" the database
> monitor about those places again.  Everything is still there and usable.

Then just consider the data directory of Postgres to be the root table space.
You may put it wherever you want.

> It's really sad that PostgreSQL doesn't have an ADD TABLESPACE command or the
> functionality built into CREATE TABLESPACE to recognize a tablespace already
> exists and simply recreate the entry for it in the default tablespace.  When
> one creates an entire database in this new tablespace, PostgreSQL should need
> nothing other than to know the tablespace exists as everything else should be
> stored in that tablespace.

I doubt that you can do that with, say, Oracle. A lot of information
(like users and schema) will be stored in the main tablespace - I'm not
100% sure, though (don't know enough of Oracle). So, if you wipe your
main database installation, don't be surprised, that a lot is lost.

Yes, it might be nice and useful to be able to import an tablespace. But
I guess that would require some internal restructuring...

Tino.

--
"What we nourish flourishes." - "Was wir nähren erblüht."

www.lichtkreis-chemnitz.de
www.craniosacralzentrum.de

В списке pgsql-admin по дате отправления:

Предыдущее
От: Scott Mead
Дата:
Сообщение: Re: Add pre-existing tablespace to new installation
Следующее
От: Scott Mead
Дата:
Сообщение: Re: Add pre-existing tablespace to new installation