I used the followings: create tablespace mytabspc location '/var/lib/pgsql/data/pg_tblspc';
create database mydb with tablespace=mytabspc; drop database mydb; drop tablespace mytabspc; ERROR: tablspace 'mytabspc' is not empty Please tell me why? On Tue, Jan 12, 2010 at 11:50 AM, Greg Smith <g...@2ndquadrant.com> wrote: > AI Rumman wrote: > >> But actually I want to know that why the value in spclocation is null is >> pg_tablespace for pg_default. >> Moreover, $PGDATA/pg_tblspc has no file. >> Could you please tell me why? >> > > PostgreSQL ships with a blank tablespace setting, which it interprets as > meaning you want to put the database table files into the default tablespace > which is stored in $PGDATA/base > > When you create a new tablespace using CREATE TABLESPACE: > http://www.postgresql.org/docs/current/static/sql-createtablespace.html > > Then you'll find that pg_tblspc contains a symbolic link to the new > directory you've told it to use. At that point, you can then point all new > creation toward that location by setting default_tablespace, or put > individual bits of data onto there with the appropriate options to CREATE: > http://www.postgresql.org/docs/current/static/manage-ag-tablespaces.html > > -- > Greg Smith 2ndQuadrant Baltimore, MD > PostgreSQL Training, Services and Support > g...@2ndquadrant.com www.2ndQuadrant.com <http://www.2ndquadrant.com/> > >