23.81%
Search · Index

II.7.2 Deleting a tablespace

Skip down for instructions on Deleting a PostgreSQL tablespace.

Should it become necessary to rebuild a tablespace from scratch, you can use the drop user command in SVRMGRL with the cascade option. This command will drop the user and every database object the user owns.

SVRMGR> drop user $OPENACS_SERVICE_NAME cascade;

If this does not work because svrmgrl "cannot drop a user that is currently connected", make sure to kill the AOLserver using this user. If it still does not work, do:

SVRMGR> select username, sid, serial# from v$session where lower(username)='$OPENACS_SERVICE_NAME';

and then

SVRMGR> alter system kill session 'sid, serial#';

where sid and serial# are replaced with the corresponding values for the open session.

Use with caution!

If you feel the need to delete everything related to the service, you can also issue the following:

SVRMGR> drop tablespace $OPENACS_SERVICE_NAME including contents cascade constraints;

Dropping a PostgreSQL tablespace is easy. You have to stop any AOLserver instances that are using the database that you wish to drop. If you're using daemontools, this is simple, just use the 'down' flag (-d). If you're using inittab, you have to comment out your server in /etc/inittab, reread the inittab with /sbin/init q, and then restart-aolserver $OPENACS_SERVICE_NAME .

Then, to drop the db, just do:

[$OPENACS_SERVICE_NAME ~]$ dropdb $OPENACS_SERVICE_NAME

DROP DATABASE