postgresql Homebrew๋ก ์ค์น๋ถํฐ DBeaver ์ฐ๊ฒฐ๊น์ง
ํจํค์ง ์ค์น ๋๊ตฌ์ธ 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=# ํน์ postgre=> ์ด ํ๋จ ์ผ์ชฝ์ ๋ณด์ธ๋ค๋ฉด ์ฑ๊ณต์ ๋๋ค.
#์ ๊ด๋ฆฌ๋ก ์ ์์ ์๋ฏธํฉ๋๋ค.
์ด์ ๋ช๊ฐ์ง ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅ์ผ๋ก DB๋ฅผ ์กฐ์ํฉ๋๋ค.
\du ๋ฅผ ์ ๋ ฅํ๋ฉด database user(์ฌ์ฉ์)๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
Role name ์ค test๋ ์ ๊ฐ ์์๋ก ๋ง๋ค์ด ๋์ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์์ ์ ์์ต๋๋ค.
2. db ์ฌ์ฉ์ ์ถ๊ฐํ๊ธฐ
CREATE ROLE ์ํ๋์ด๋ฆ WITH LOGIN PASSWORD '๋น๋ฐ๋ฒํธ';
์ ๋ช ๋ น์ด๋ฅผ ํตํด์ db ์ฌ์ฉ์๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํ ๋๋ ๋ฐ์ํ('')์์ ๋ฃ์ด์ฃผ์๋ฉด ๋ฉ๋๋ค.
test / 1234๋ก db ์ฌ์ฉ์๋ฅผ ์์ฑํ์ต๋๋ค.
์ฑ๊ณตํ๋ฉด CREATE ROLE ์ด๋ผ๋ ๋ฌธ๊ตฌ๊ฐ ์๋์ผ๋ก ํ์ ๋ฉ๋๋ค.
๋ณธ์ธ์ด ๋ง๋ ROLE์ด ์ ์์ฑ๋์๋์ง ํ์ธํ๋ ค๋ฉด \du ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด ๋ฉ๋๋ค.
4. ํ ์ด๋ธ ์์ฑ ๊ถํ ์ถ๊ฐํ๊ธฐ
ALTER ROLE ์ด๋ฆ CREATEDB;
"์ด๋ฆ"์๋ ๋ณธ์ธ์ด ์์ฑํ ROLE name์ ์ ๋ ฅํ์๋ฉด ๋ฉ๋๋ค.
์ ๋ช ๋ น์ ํตํด์ database๋ฅผ ๋ง๋ค ์ ์๋ ๊ถํ์ ๋ถ์ฌํฉ๋๋ค.
5. ์์ฑํ ์ฌ์ฉ์๋ก ์ ์ํ๊ธฐ
์ด์ \q ๋ฅผ ์ ๋ ฅํ์ฌ ํ์ฌ ๊ด๋ฆฌ์ ์์์ ๋์ต๋๋ค.
psql postgres -U ์ด๋ฆ
์ ๋ช ๋ น์ด๋ฅผ ํตํด์ ๋ณธ์ธ์ด ์์ฑํ "์ด๋ฆ"์ ์ฌ์ฉ์๋ก ์ ์ํฉ๋๋ค.
์ ์๊น๋ง๋ test ๋ผ๋ ์ด๋ฆ์ ์ฌ์ฉ์๋ก ์ ์ํ์๊ณ ์ ์ ํ์ postgres=> ๊ฐ ๊ธฐ๋ณธ์ผ๋ก ์ ๋ ฅ ๋ฉ๋๋ค. ๊ด๋ฆฌ์์ postgres=# ๊ณผ ๋ค๋ฅธ ๋ชจ์ต.
6. database ์์ฑํ๊ธฐ
\l ์ ์ ๋ ฅํ๋ฉด ํ์ฌ ์ฌ์ฉ์์ database๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
์ ๊ทธ๋ฆผ์ ํ์ฌ test๋ผ๋ ์ฌ์ฉ์๊ฐ ๊ฐ์ง๊ณ ์๋ database ๋ฆฌ์คํธ ์ ๋๋ค.
CREATE DATABASE ๋ฐ์ดํฐ๋ฒ ์ด์ค์ด๋ฆ;
์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด ํ์ฌ ์ฌ์ฉ์์ database๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
๋ค์ \l ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด test_db๊ฐ ์๋กญ๊ฒ ์์ฑ๋๊ฑธ ํ์ธํ ์ ์์ต๋๋ค.
๐คDBeaver์ ์ฐ๊ฒฐํ๊ธฐ
DBeaver๋ฅผ ํค์ ํ 1๋ฒ๊ณผ 2๋ฒ์ ์์ฐจ์ ์ผ๋ก ํด๋ฆญ ํ next๋ฅผ ๋๋ฌ ์ค๋๋ค.
๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ณธ์ธ์ด ์์ฑํ ์ฌ์ฉ์์ ์ด๋ฆ / ํจ์ค์๋๋ฅผ ์ ๋ ฅํ๊ณ ํด๋น ์ฌ์ฉ์์์ ์์ฑํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ์ Database ๋์ ์ ๋ ฅํด ์ค๋๋ค.
๋ง์ฝ, ๋๋ผ์ด๋ฒ๊ฐ ์ค์น๊ฐ ๋์ง ์์์ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๋ฐ์ ํ ์ ์์ผ๋ฏ๋ก "Edit Driver Settings"๋ฅผ ํด๋ฆญํ์ ํ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด Libraries ํญ์ ๋ค์ด๊ฐ ์ค์นํด์ฃผ์๋ฉด ๋ฉ๋๋ค.
๋ฐ๋ก ๊ฒฝ๊ณ ๋ฌธ๊ตฌ๋ ์ค๋ฅ๊ฐ ๋ํ๋์ง ์๋๋ค๋ฉด, ์ด๋ฏธ ์ ์ ์ค์น๊ฐ ๋ ๊ฒ์ด๋ฏ๋ก ๋์ด๊ฐ์๋ฉด ๋ฉ๋๋ค.
DBeaver ์ผ์ชฝ ์๋จ์ ์ด๋ก์ ๋ฐ์ค์ ํฐ์ v ์ฒดํฌ๊ฐ ๋์ด์๋ค๋ฉด ์ ์ ์ฐ๊ฒฐ์ด ๋ ๊ฒ์ด๋ฏ๋ก ์ฌ์ฉํ์๋ฉด ๋ฉ๋๋ค.
์ถ๊ฐ๋ก SQL์์ฑ์ ์ํด์ ํธ์ง๊ธฐ๋ฅผ ์์ฑํ ํ์ ํด๋น ํธ์ง๊ธฐ๋ฅผ ์ฟผ๋ฆฌ๋ฌธ์ด ์คํ๋ db์ ํํด์ฃผ์ ์ผ ํฉ๋๋ค.
๊ทธ๋ฆผ ์ฐธ๊ณ