Adding/removing tablespaces
Tablespaces allow us to store PostgreSQL data across different devices. We might want to do that for performance or administrative ease, or our database might just have run out of disk space.
Getting ready
Before we can create a useful tablespace, we need to prepare the underlying devices in a production-ready form.
Think carefully about the speed, volume, and robustness of the disks you are about to use. Make sure that they are configured correctly. Those decisions will affect your life for the next few months and years!
Disk performance is a subtle issue that most people think can be decided in a few seconds. We recommend reading Chapter 10, Performance and Concurrency, from this book, as well as additional books on the same topic.
Once you've done all of that, then you can create a directory for your tablespace. The directory must be:
Empty
Owned by the PostgreSQL-owning user ID
Specified with an absolute path name
On Linux and Unix systems, you shouldn't use a mount...