[PostgreSQL] Data directory ๋ณ€๊ฒฝ

onpremise ํ™˜๊ฒฝ์—์„œ ์ด๋ž˜์ €๋ž˜ ๋””์Šคํฌ๋ฅผ ๊ตด๋ฆฌ๋‹ค๋ณด๋ฉด, ๊ธฐ๋ณธ ๊ฒฝ๋กœ๊ฐ€ ์•„๋‹Œ ์„œ๋ธŒ ๊ฒฝ๋กœ๋กœ DB ์ €์žฅ ๊ฒฝ๋กœ๋ฅผ ๋ฐ”๊พธ๊ณ  ์‹ถ์„ ์ˆ˜๋„ ์žˆ๋‹ค.

๋”ฑ ์ด๋Ÿฐ ๊ฒฝ์šฐ๊ฐ€ ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ๋‹ค.

๊ธฐ๋ณธ ๋งˆ์šดํŠธ ๊ฒฝ๋กœ๋Š” 1ํ…Œ๋ผ๋„ ์•ˆ๋˜๋Š”๋ฐ, ๋‚˜์ค‘์— ๊ผฝ์•„๋†“์€ ์ €์žฅ์šฉ ๋งˆ์šดํŠธ ๊ฒฝ๋กœ /data๊ฐ€ ๊ทผ 4ํ…Œ๋ผ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
์ด๋Ÿฐ ์ƒํ™ฉ์—์„œ๋Š” DB ์ €์žฅ ๊ฒฝ๋กœ๋ฅผ ๋„‰๋„‰ํ•œ ๋งˆ์šดํŠธ๋กœ ๋ฐ”๊พธ๊ณ  ์‹ถ์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.




DB ์ค‘๋‹จ

๋จผ์ € ์†์ƒ ์—†์ด DB๋ฅผ ์˜ฎ๊ฒจ์•ผ ํ•˜๋‹ˆ, ์ค‘๋‹จ์„ ์‹œํ‚ค์ž.

sudoย systemctlย stopย postgresql.service




์ €์žฅ ๊ฒฝ๋กœ ํ™•์ธ ๋ฐ ์ด๋™

๋ณดํ†ต DB ์ €์žฅ์†Œ๋Š” /var/lib/postgresql/๋ฒ„์ „/main ๊ฒฝ๋กœ์— ์กด์žฌํ•œ๋‹ค.

์ €๊ฒŒ ๋‹ค ์‹ค์งˆ์ ์ธ DB์˜ ์•™๊ผฌ๋‹ค.
์ €๊ฑธ ์˜ฎ๊ฒจ์•ผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

์ƒˆ๋กœ์šด ๊ฒฝ๋กœ์— ์ ์ ˆํžˆ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๊ตฌ์„ฑํ•ด์ฃผ๊ณ 

mkdir -p postgresql/13/main

๊ถŒํ•œ ์ฃผ๊ณ 

sudo chown -R postgres /data/postgresql/13/main

์˜ฎ๊ธด๋‹ค.

sudo mv /var/lib/postgresql/13/main/ /data/postgresql/13/main





์ €์žฅ ๊ฒฝ๋กœ ๊ต์ฒด

์ด๋ฒˆ์—๋Š” ์ƒˆ๋กœ ๋งŒ๋“  ์ €์žฅ๊ณต๊ฐ„์„ psql์ด ๊ฐ€๋ฅดํ‚ค๋„๋ก ์„ค์ •์„ ์กฐ์ ˆํ•ด์ค˜์•ผ ํ•œ๋‹ค.
conf ํŒŒ์ผ์„ ์ฐพ์•„์„œ

sudo viย /etc/postgresql/13/main/postgresql.conf

์ € data_directory๋ฅผ


์ƒˆ ๊ฒฝ๋กœ๋กœ ๊ต์ฒดํ•ด์ค€๋‹ค.

๊ทธ๋ฆฌ๊ณ  DB๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๋ฉด ๋์ด๋‹ค.

sudo systemctl start postgresql.service

๋ณ„๋‹ค๋ฅธ ์˜ค๋ฅ˜ ์—†์ด active๊ฐ€ ๋œ๋‹ค๋ฉด ์ž˜ ๋œ ๊ฒƒ์ด๊ณ 


์ด๋ ‡๊ฒŒ ์ €์žฅ ๊ฒฝ๋กœ๋„ ๊ต์ฒด๊ฐ€ ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.