๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Programming/DB

postgresql Homebrew๋กœ ์„ค์น˜๋ถ€ํ„ฐ DBeaver ์—ฐ๊ฒฐ๊นŒ์ง€

728x90
๋ฐ˜์‘ํ˜•

ํŒจํ‚ค์ง€ ์„ค์น˜ ๋„๊ตฌ์ธ homebrew๋ฅผ ์ด์šฉํ•ด์„œ postgresql์„ ์„ค์น˜ํ•˜๊ณ  DBMS ๋„๊ตฌ์ธ DBeaver์— ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ๊นŒ์ง€ ์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

Homebrew๋‚˜ DBeaver๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ถ€๋ถ„์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค.

 

โ˜๏ธhomebrew๋กœ postgresql ์„ค์น˜ํ•˜๊ธฐ

1. ํ„ฐ๋ฏธ๋„์— ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.

 

2. ๋ฒ„์ „ ํ™•์ธํ•˜๊ธฐ

brew search postgresql

์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด homebrew์—์„œ ์„ค์น˜ ๊ฐ€๋Šฅํ•œ postgresql์˜ ๋ฒ„์ ผ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@ ๋’ค์— ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ๋ฒ„์ „์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

 

3. ์„ค์น˜ํ•˜๊ธฐ

brew install postgresql

์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ตœ์‹  ๋ฒ„์ „์˜ posrgresql์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋งŒ์•ฝ, ํŠน์ • ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, @๊นŒ์ง€ ํฌํ•จํ•œ ์ „์ฒด ์ด๋ฆ„์„ ์ ์–ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

ex) brew install postgresql@9.6

* homebrew์˜ ๋ฌธ์ œ๋กœ ์ด์ „ ๋ฒ„์ „์ด ์„ค์น˜๋˜์ง€ ์•Š์€ ๋ฒ„๊ทธ๊ฐ€ ์ข…์ข… ์žˆ์Šต๋‹ˆ๋‹ค.

 

4. ์„ค์น˜ ํ™•์ธํ•˜๊ธฐ

brew list

์œ„ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด brew๋ฅผ ์ด์šฉํ•ด ์„ค์น˜ํ•œ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โœŒ๏ธ postgresql ์‹คํ–‰ ๋ฐ database ์ƒ์„ฑ

1. brew ๋ช…๋ น์–ด๋กœ postgresql ์‹คํ–‰

brew services start postgresql

์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด postgresql ์„œ๋น„์Šค๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

์„œ๋น„์Šค ์‹คํ–‰ ์„ฑ๊ณต

2. postgresql ์‰˜ ๋“ค์–ด๊ฐ€๊ธฐ

psql postgres

์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด postgresql ์„ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์‰˜์— ์ž…์žฅ ํ•ฉ๋‹ˆ๋‹ค.

postgres ์‰˜

์œ„ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ postgres=# ํ˜น์€ postgre=> ์ด ํ•˜๋‹จ ์™ผ์ชฝ์— ๋ณด์ธ๋‹ค๋ฉด ์„ฑ๊ณต์ž…๋‹ˆ๋‹ค.

 

#์€ ๊ด€๋ฆฌ๋กœ ์ ‘์†์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

 

์ด์ œ ๋ช‡๊ฐ€์ง€ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅ์œผ๋กœ DB๋ฅผ ์กฐ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

\du: Role ํ™•์ธ

\du ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด database user(์‚ฌ์šฉ์ž)๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

Role name ์ค‘ test๋Š” ์ œ๊ฐ€ ์ž„์˜๋กœ ๋งŒ๋“ค์–ด ๋†“์€ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์—†์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

2. db ์‚ฌ์šฉ์ž ์ถ”๊ฐ€ํ•˜๊ธฐ

CREATE ROLE ์›ํ•˜๋Š”์ด๋ฆ„ WITH LOGIN PASSWORD '๋น„๋ฐ€๋ฒˆํ˜ธ';

์œ„ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด์„œ db ์‚ฌ์šฉ์ž๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•  ๋•Œ๋Š” ๋”ฐ์›€ํ‘œ('')์•ˆ์— ๋„ฃ์–ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ด๋ฆ„: test  ๋น„๋ฐ€๋ฒˆํ˜ธ: 1234

test / 1234๋กœ db ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

์„ฑ๊ณตํ•˜๋ฉด CREATE ROLE ์ด๋ผ๋Š” ๋ฌธ๊ตฌ๊ฐ€ ์ž๋™์œผ๋กœ ํ‘œ์‹œ ๋ฉ๋‹ˆ๋‹ค.

 

๋ณธ์ธ์ด ๋งŒ๋“  ROLE์ด ์ž˜ ์ƒ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด \du ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

4. ํ…Œ์ด๋ธ” ์ƒ์„ฑ ๊ถŒํ•œ ์ถ”๊ฐ€ํ•˜๊ธฐ

ALTER ROLE ์ด๋ฆ„ CREATEDB;

"์ด๋ฆ„"์—๋Š” ๋ณธ์ธ์ด ์ƒ์„ฑํ•œ ROLE name์„ ์ž…๋ ฅํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์œ„ ๋ช…๋ น์„ ํ†ตํ•ด์„œ database๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

test์—๊ฒŒ db ์ƒ์„ฑ ๊ถŒํ•œ ๋ถ€์—ฌ

5. ์ƒ์„ฑํ•œ ์‚ฌ์šฉ์ž๋กœ ์ ‘์†ํ•˜๊ธฐ

์ด์ œ \q ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ํ˜„์žฌ ๊ด€๋ฆฌ์ž ์‰˜์—์„œ ๋‚˜์˜ต๋‹ˆ๋‹ค.

๋‚˜์˜ค๊ธฐ

psql postgres -U ์ด๋ฆ„

์œ„ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด์„œ ๋ณธ์ธ์ด ์ƒ์„ฑํ•œ "์ด๋ฆ„"์˜ ์‚ฌ์šฉ์ž๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.

test๋กœ ์ ‘์†

์ „ ์•„๊นŒ๋งŒ๋“  test ๋ผ๋Š” ์ด๋ฆ„์˜ ์‚ฌ์šฉ์ž๋กœ ์ ‘์†ํ•˜์˜€๊ณ  ์ ‘์† ํ›„์—” postgres=> ๊ฐ€ ๊ธฐ๋ณธ์œผ๋กœ ์ž…๋ ฅ ๋ฉ๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž์˜ postgres=# ๊ณผ ๋‹ค๋ฅธ ๋ชจ์Šต.

 

6. database ์ƒ์„ฑํ•˜๊ธฐ

\l ์„ ์ž…๋ ฅํ•˜๋ฉด ํ˜„์žฌ ์‚ฌ์šฉ์ž์˜ database๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์œ„ ๊ทธ๋ฆผ์€ ํ˜„์žฌ test๋ผ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” database ๋ฆฌ์ŠคํŠธ ์ž…๋‹ˆ๋‹ค.

CREATE DATABASE ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋ฆ„;

 ์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ํ˜„์žฌ ์‚ฌ์šฉ์ž์— database๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

test_db๋ผ๋Š” ์ด๋ฆ„์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ ์„ฑ๊ณต

๋‹ค์‹œ \l ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด test_db๊ฐ€ ์ƒˆ๋กญ๊ฒŒ ์ƒ์„ฑ๋œ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐ŸคŸDBeaver์— ์—ฐ๊ฒฐํ•˜๊ธฐ

DBeaver๋ฅผ ํ‚ค์‹  ํ›„ 1๋ฒˆ๊ณผ 2๋ฒˆ์„ ์ˆœ์ฐจ์ ์œผ๋กœ ํด๋ฆญ ํ›„ next๋ฅผ ๋ˆŒ๋Ÿฌ ์ค๋‹ˆ๋‹ค.

๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๋ณธ์ธ์ด ์ƒ์„ฑํ•œ ์‚ฌ์šฉ์ž์˜ ์ด๋ฆ„ / ํŒจ์Šค์›Œ๋“œ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ํ•ด๋‹น ์‚ฌ์šฉ์ž์—์„œ ์ƒ์„ฑํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„์„ Database ๋ž€์— ์ž…๋ ฅํ•ด ์ค๋‹ˆ๋‹ค.

 

๋งŒ์•ฝ, ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์„ค์น˜๊ฐ€ ๋˜์ง€ ์•Š์•˜์„ ๊ฒฝ์šฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ "Edit Driver Settings"๋ฅผ ํด๋ฆญํ•˜์‹  ํ›„ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด Libraries ํƒญ์— ๋“ค์–ด๊ฐ€ ์„ค์น˜ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋”ฐ๋กœ ๊ฒฝ๊ณ  ๋ฌธ๊ตฌ๋‚˜ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š”๋‹ค๋ฉด, ์ด๋ฏธ ์ •์ƒ ์„ค์น˜๊ฐ€ ๋œ ๊ฒƒ์ด๋ฏ€๋กœ ๋„˜์–ด๊ฐ€์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

DBeaver ์™ผ์ชฝ ์ƒ๋‹จ์— ์ดˆ๋ก์ƒ‰ ๋ฐ•์Šค์— ํฐ์ƒ‰ v ์ฒดํฌ๊ฐ€ ๋˜์–ด์žˆ๋‹ค๋ฉด ์ •์ƒ ์—ฐ๊ฒฐ์ด ๋œ ๊ฒƒ์ด๋ฏ€๋กœ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

์ถ”๊ฐ€๋กœ SQL์ž‘์„ฑ์„ ์œ„ํ•ด์„œ  ํŽธ์ง‘๊ธฐ๋ฅผ ์ƒ์„ฑํ•œ ํ›„์— ํ•ด๋‹น ํŽธ์ง‘๊ธฐ๋ฅผ ์ฟผ๋ฆฌ๋ฌธ์ด ์‹คํ–‰๋  db์„ ํƒํ•ด์ฃผ์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

๊ทธ๋ฆผ ์ฐธ๊ณ 

 

728x90
๋ฐ˜์‘ํ˜•