Hot logical backup of all tables in a tablespace
Sometimes, we may wish to make a dump of tables and data in a tablespace. Unfortunately, there isn't a simple command to do this, so we need to write some reusable scripts.
How to do it…
It is possible for a tablespace to contain objects from more than one database, so run the following query to see from which databases you need to dump:
SELECT datname FROM pg_database WHERE oid IN (SELECT pg_tablespace_databases(ts.oid)FROM pg_tablespace ts WHERE spcname = 'mytablespacename');
The following procedure allows you to dump all tables that reside on a given tablespace and within one database only:
- Create a file named
onets.sql
that contains the following SQL. This query extracts the list of tables in a ...
Get PostgreSQL 9 Administration Cookbook - Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.