Обсуждение: indexes separate from data
Hi, A relatively novice user of PostgreSQL but not of other databases... I'm trying to understand the use of initlocation....I understand having separate data storage areas (perhaps for each database in your postmaster), but is there some way to have a separate location for indexes? How would this be designated through PostgreSQL? __________________________________________________ Do You Yahoo!? Yahoo! Tax Center - online filing with TurboTax http://taxes.yahoo.com/
----- Original Message -----
From: "Judy Jecelin"
>
> Hi,
>
> A relatively novice user of PostgreSQL but not
> of other databases... I'm trying to understand the
> use of initlocation....I understand having separate
> data storage areas (perhaps for each database
> in your postmaster), but is there some way to have
> a separate location for indexes? How would this
> be designated through PostgreSQL?
>
since every index is stored as separate file, you should identify the files
corresponding to the indexes and move them to the proper device (while the
database is shut down) then create symlinks in the database directory
pointing to the moved files
to identify the names of the OS files corresponding to indexes connect to
the DB and execute
something like:
select relname, relfilenode
from pg_class
where relkind = 'i';
make sure u're moving the files from the proper database directory (execute
"select datname, oid from pg_database" to see the OS directory name
corresponding to each database)
tablespaces are in the TODO list, so one day the whole process should be
easier
hth,
Marin
----
"...what you brought from your past, is of no use in your present. When
you must choose a new path, do not bring old experiences with you.
Those who strike out afresh, but who attempt to retain a little of the
old life, end up torn apart by their own memories. "
Interesting... What happens when you drop and recreate the index??? Marin Dimitrov wrote: > > ----- Original Message ----- > From: "Judy Jecelin" > > > > > Hi, > > > > A relatively novice user of PostgreSQL but not > > of other databases... I'm trying to understand the > > use of initlocation....I understand having separate > > data storage areas (perhaps for each database > > in your postmaster), but is there some way to have > > a separate location for indexes? How would this > > be designated through PostgreSQL? > > > > since every index is stored as separate file, you should identify the files > corresponding to the indexes and move them to the proper device (while the > database is shut down) then create symlinks in the database directory > pointing to the moved files > > to identify the names of the OS files corresponding to indexes connect to > the DB and execute > something like: > > select relname, relfilenode > from pg_class > where relkind = 'i'; > > make sure u're moving the files from the proper database directory (execute > "select datname, oid from pg_database" to see the OS directory name > corresponding to each database) > > tablespaces are in the TODO list, so one day the whole process should be > easier > > hth, > > Marin
----- Original Message -----
From: "Jean-Luc Lachance"
> Interesting... What happens when you drop and recreate the index???
>
repeat the whole procedure again
hth,
Marin
----
"...what you brought from your past, is of no use in your present. When
you must choose a new path, do not bring old experiences with you.
Those who strike out afresh, but who attempt to retain a little of the
old life, end up torn apart by their own memories. "