https://www.postgresql.org/

 

PostgreSQL

The world's most advanced open source database.

www.postgresql.org

PostgreSQL์€ ์„ธ๊ณ„์—์„œ ๊ฐ€์žฅ ์ง„๋ณด๋œ ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ, ํ™•์žฅ์„ฑ๊ณผ ์•ˆ์ •์„ฑ์„ ๊ฐ–์ถ˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ๊ณผ ๋ณต์žกํ•œ ์ฟผ๋ฆฌ ์ฒ˜๋ฆฌ์— ๋›ฐ์–ด๋‚œ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. MySQL์ด ์†๋„์™€ ๋‹จ์ˆœํ•จ์„, Oracle์ด ๊ณ ๊ธ‰ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ๊ฐ•์กฐํ•˜๋Š” ๋ฐ˜๋ฉด, PostgreSQL์€ ์˜คํ”ˆ ์†Œ์Šค์ž„์—๋„ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ๊ธฐ๋Šฅ๊ณผ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ง€์›์œผ๋กœ ๋›ฐ์–ด๋‚œ ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด PostgreSQL์€ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์—์„œ ์‹ ๋ขฐ์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๋ชจ๋‘ ๊ฐ–์ถ˜ ์ตœ์ ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์†”๋ฃจ์…˜์œผ๋กœ ์ž๋ฆฌ ์žก๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.๐Ÿ™‚

 

1๏ธโƒฃ PostgreSQL ์„ค์น˜

EnterpriseDB์—์„œ PostgreSQL ์„ค์น˜ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•œ ํ›„ ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•  ๋•Œ, ์‚ฌ์šฉํ•  PostgreSQL ๋ฒ„์ „์„ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ๋งž๋Š” ์ ์ ˆํ•œ ๋ฒ„์ „์„ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋ฉฐ, ๊ฐ ๋ฒ„์ „์˜ ํŠน์ง•์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • 17 (RC1) : ์ตœ์‹  ๋ฒ ํƒ€ ๋ฒ„์ „, ํ…Œ์ŠคํŠธ ๋ชฉ์ ์— ์ ํ•ฉํ•˜๋‚˜ ์•ˆ์ •์„ฑ ๋ณด์žฅ ์–ด๋ ค์›€.
  • 16.4 : ์ตœ์‹  ์•ˆ์ • ๋ฒ„์ „, ์„ฑ๋Šฅ ๋ฐ ๊ธฐ๋Šฅ ๊ฐœ์„ , ์žฅ๊ธฐ์  ์‚ฌ์šฉ์— ์ ํ•ฉ.
  • 15.8 : ์•ˆ์ •์„ฑ๊ณผ ์„ฑ๋Šฅ ๊ท ํ˜• ์žกํžŒ ๋ฒ„์ „, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ํ•„์š” ์—†๋Š” ๊ฒฝ์šฐ ์ ํ•ฉ.
  • 14.13 : ์•ˆ์ •์ ์ธ ๊ตฌ๋ฒ„์ „, ๋ณด์ˆ˜์  ์—…๊ทธ๋ ˆ์ด๋“œ ์ „๋žต์— ์ ํ•ฉ.

 

๋˜ํ•œ, ์„ค์น˜ ์ค‘๊ฐ„์— ๊ด€๋ฆฌ์ž(superuser) ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•˜๋ฉฐ, ์ด ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ๋‚˜์ค‘์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•˜๊ณ  ๊ด€๋ฆฌํ•  ๋•Œ ํ•„์ˆ˜์ ์ด๋ฏ€๋กœ ๊ผญ ๊ธฐ์–ตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋œ ํ›„ pgAdmin 4๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•„์š”์— ๋”ฐ๋ผ Stack Builder๋กœ ์ถ”๊ฐ€์ ์ธ ํ™•์žฅ ๊ธฐ๋Šฅ์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

01234567891011

 

2๏ธโƒฃ pgAdmin 4 ์‹คํ–‰ํ•˜๊ธฐ

pgAdmin์€ PostgreSQL์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” GUI ํˆด๋กœ, MySQL์˜ ์›Œํฌ๋ฒค์น˜๋‚˜ Oracle์˜ SQL Developer์ฒ˜๋Ÿผ ํ…Œ์ด๋ธ” ๋ฐ ์‚ฌ์šฉ์ž ์ƒ์„ฑ ๋“ฑ์˜ ์ž‘์—…์„ ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

PostgreSQL ์„ค์น˜ ์‹œ ํ•จ๊ป˜ ์„ค์น˜๋˜๋ฏ€๋กœ ์‹œ์ž‘ ๋ฉ”๋‰ด์—์„œ pgAdmin 4๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ๋ฐ”๋กœ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

* ์„ค์น˜๊ฒฝ๋กœ : C:\Program Files\PostgreSQL\14\pgAdmin 4\runtime\pgAdmin4.exe

 

ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์‹œ, ์„ค์น˜ ๊ณผ์ •์—์„œ ์„ค์ •ํ•œ PostgreSQL ๊ด€๋ฆฌ์ž(superuser) ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์— ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

0123

 

3๏ธโƒฃ ์‚ฌ์šฉ์ž, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ํ…Œ์ด๋ธ” ์ƒ์„ฑ ๋ฐ ์ฟผ๋ฆฌ ์‹คํ–‰ ๋ฐฉ๋ฒ•

โœ”๏ธ ์‚ฌ์šฉ์ž ์ƒ์„ฑ

  • pgAdmin 4์—์„œ [Login/Group Roles] ์šฐํด๋ฆญ > [Create] > [Login/Group Role...]์„ ํด๋ฆญํ•˜์—ฌ ์ƒˆ ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • General ํƒญ : ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  • Definition ํƒญ : ์‚ฌ์šฉ์ž์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  • Privileges ํƒญ : ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
    • Can login : ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์ฒดํฌ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ฐ˜๋“œ์‹œ ์ฒดํฌํ•ด์•ผ ๋กœ๊ทธ์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
    • Inherit : ์‚ฌ์šฉ์ž๊ฐ€ ์†ํ•œ ๊ทธ๋ฃน์˜ ๊ถŒํ•œ์„ ์ƒ์†๋ฐ›์„์ง€ ์—ฌ๋ถ€๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์ฒดํฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๊ธฐ๋ณธ์ ์œผ๋กœ ์ฒดํฌ๋˜์ง€ ์•Š์€ ๊ถŒํ•œ๋“ค : Superuser, Create DB, Create Role, Replication, Bypass RLS ๋“ฑ์€ ํ•„์š”์— ๋”ฐ๋ผ ์ˆ˜๋™์œผ๋กœ ์ฒดํฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

โœ”๏ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ

  • [Databases] ์šฐํด๋ฆญ > [Create] > [Database...]๋ฅผ ํด๋ฆญํ•˜์—ฌ ์ƒˆ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์†Œ์œ ์ž๋ฅผ ์ƒˆ๋กœ ๋งŒ๋“  ์‚ฌ์šฉ์ž๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๊ทธ ์‚ฌ์šฉ์ž๊ฐ€ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•ด ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

โœ”๏ธ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

  • ์ƒ์„ฑํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ ํƒํ•œ ํ›„ [Schemas] > [public] > [Tables] ์šฐํด๋ฆญ > [Create] > [Table...]์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  • ํ…Œ์ด๋ธ” ์ด๋ฆ„๊ณผ ์ปฌ๋Ÿผ๋“ค์„ ์ •์˜ํ•œ ํ›„ Save๋ฅผ ํด๋ฆญํ•˜์—ฌ ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

 

โœ”๏ธ ์ฟผ๋ฆฌ ์‹คํ–‰

  • ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด, ์ƒ์„ฑํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ ํƒํ•˜๊ณ  ์ƒ๋‹จ ๋ฉ”๋‰ด์—์„œ Query Tool ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  • ์ฟผ๋ฆฌ ์ฐฝ์— SQL ์ฟผ๋ฆฌ๋ฅผ ์ž…๋ ฅํ•œ ํ›„ Run(F5) ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

01234

 

๐Ÿ’ก ์œˆ๋„์šฐ ์„œ๋ฒ„์—์„œ PostgreSQL ์™ธ๋ถ€ ์ ‘์† ํ—ˆ์šฉํ•˜๊ธฐ

โœ”๏ธ pg_hba.conf ํŒŒ์ผ ์„ค์ •

  • C:\Program Files\PostgreSQL\14\data\pg_hba.conf ํŒŒ์ผ์„ ์—ฝ๋‹ˆ๋‹ค. (๋ฉ”๋ชจ์žฅ ๋“ฑ)
    (PostgreSQL์˜ Host-Based Authentication ์„ค์ • ํŒŒ์ผ)
  • "IPv4 local connections:" ์„น์…˜ ์•„๋ž˜์— ๋‹ค์Œ ์ค„์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. (87๋ฒˆ ๋ผ์ธ)
    host all all 0.0.0.0/0 md5
  • ์ด ์„ค์ •์€ ๋ชจ๋“  IP ์ฃผ์†Œ์—์„œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•ด MD5 ์ธ์ฆ์„ ํ†ตํ•ด ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

โœ”๏ธ Windows ๋ฐฉํ™”๋ฒฝ ์„ค์ •

  1. "Windows Defender ๋ฐฉํ™”๋ฒฝ"์„ ์—ด๊ณ (์‹œ์ž‘๋ฉ”๋‰ด ๊ฒ€์ƒ‰), ์™ผ์ชฝ ์‚ฌ์ด๋“œ๋ฐ”์—์„œ ๊ณ ๊ธ‰ ์„ค์ •์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
  2. "์ธ๋ฐ”์šด๋“œ ๊ทœ์น™"์„ ํด๋ฆญํ•˜๊ณ  "์ƒˆ ๊ทœ์น™"์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. ๊ทœ์น™ ์œ ํ˜•์„ "ํฌํŠธ"๋กœ ์„ ํƒํ•œ ํ›„, TCP ๋ฐ ํฌํŠธ 5432๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. (PostgreSQL์ด ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋ณธ ํฌํŠธ)
  4. "์—ฐ๊ฒฐ ํ—ˆ์šฉ"์„ ์„ ํƒํ•˜๊ณ , ์ ์šฉํ•  ๋„คํŠธ์›Œํฌ๋ฅผ ์„ ํƒํ•œ ๋’ค, ๊ทœ์น™ ์ด๋ฆ„์„ ์ž…๋ ฅํ•˜๊ณ  "๋งˆ์นจ"์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

 

โœ”๏ธ ์„ค์ • ์™„๋ฃŒ ํ›„ PostgreSQL ์„œ๋ฒ„๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ํ•ด๋‹น ์„œ๋ฒ„๋ฅผ ์šฐํด๋ฆญํ•˜์—ฌ Reload Configuration์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

 

01234

 

๐Ÿ’ก ํด๋ผ์ด์–ธํŠธ์—์„œ PostgreSQL ์„œ๋ฒ„์— ์™ธ๋ถ€ ์ ‘์†ํ•˜๊ธฐ

  • pgAdmin์—์„œ Servers๋ฅผ ์šฐํด๋ฆญํ•œ ํ›„ Register > Server๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. Connection ํƒญ์—์„œ ์™ธ๋ถ€ ์„œ๋ฒ„์˜ IP ์ฃผ์†Œ(๋˜๋Š” ๋„๋ฉ”์ธ), ํฌํŠธ(๊ธฐ๋ณธ 5432), ์‚ฌ์šฉ์ž ์ด๋ฆ„, ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Save๋ฅผ ํด๋ฆญํ•˜์—ฌ ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ๋“ฑ๋ก๋œ ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
yewon31