I use postgresql 9.1, on ubuntu 12.04. I had installed the depot package.
I have added a new partition to my system, and I would like to create a postgresql database on this partition ( which will be entirely dedicated to this database).
My pgdata is located in var/lib/postgresql/9.1/main
. I plan to stop the postgresql service, copy the pgdata content to the new partition, then make a symbolic link to the new partition, chown
the new directory to postgres user, restart postgresql... but I'm afraid this all looks more like a hack.
Is there a way to create a database specifically on a specified partition ? Something more "canonical" (not a play of word with ubuntu)
-
It depends on your operating system and whether it's a self-compiled or pre-packaged postgres install, you need to provide these details in the questionDaniel Vérité– Daniel Vérité2013年03月19日 15:07:27 +00:00Commented Mar 19, 2013 at 15:07
-
@DanielVérité ubuntu 12.04., ubuntu depot package installedStephane Rolland– Stephane Rolland2013年03月19日 15:15:21 +00:00Commented Mar 19, 2013 at 15:15
-
Check the answers to this question.jop– jop2013年03月19日 15:18:08 +00:00Commented Mar 19, 2013 at 15:18
-
ok I found it @ var/lib/postgresql/9.1/mainStephane Rolland– Stephane Rolland2013年03月19日 15:59:06 +00:00Commented Mar 19, 2013 at 15:59
-
1You don't need the symbolic link, just change the configuration of the postmaster startup script to point to the new data directory. You could also create a tablespace on the new partition and create the new database in that. No need to mess around with the data directory.user1822– user18222013年03月19日 16:35:19 +00:00Commented Mar 19, 2013 at 16:35
1 Answer 1
CREATE TABLESPACE could be used.
create tablespace dedicated_datastore owner postgres location '/my/mount/point/'
and now the tablespace can be used as parameter when creating a database, (or a table, or an index)
create database my_database tablespace dedicated_datastore
-
2I'm not sure about using the phrase should be used!! If you only have one database (and/or cluster) then it might be better to use either mount points, symlinks, or change the PGDATA location (in order of preference from various guides). Tablespaces have lots of caveats when it comes to backing up where as having the whole data directory mapped does not.Adam Gent– Adam Gent2016年11月30日 15:37:16 +00:00Commented Nov 30, 2016 at 15:37
-
@AdamGent noticed your comment only today. I changed it to "could"/Stephane Rolland– Stephane Rolland2020年07月10日 12:16:19 +00:00Commented Jul 10, 2020 at 12:16