-
Notifications
You must be signed in to change notification settings - Fork 2
π» [BE] DB μ€κ³ λ° κ΅¬μΆ (μμ±μΌ: 2024 11 07)
erd cloud μ¬μ΄νΈμμ λ°μ΄ν°λ² μ΄μ€ μ€κ³
λ°μ΄ν°λ² μ΄μ€ ꡬ쑰λ κΈ°νμ ν λλΆν° μ΄λ μ λ ꡬμν΄λμκΈ° λλ¬Έμ, ν° μ΄λ €μ μμ΄ μμ±ν μ μμμ΅λλ€. λ€λ§ λ°°μ΄μ΄λ Object νμμΌλ‘ μ μ₯νλ κ² νΈνκΈ° λλ¬Έμ, json νμ μ μ§μνλ dbλ‘ κ²°μ ν΄μΌ νμ΅λλ€.
PostgreSQL μ¬μ©
μμμ μΈκΈν λλ‘ JSON λ°μ΄ν° νμ μ μ§μνμ¬ λ³΅μ‘ν ꡬ쑰μ λ°μ΄ν°λ₯Ό μ μ₯νκ³ κ΄λ¦¬νκΈ°μ μ ν©νκ³ , λ€λ₯Έ DBλ³΄λ€ κ°νΈνκ³ νΈλ¦¬νλ€λ νΉμ± λλ¬Έμ PostgreSQLλ‘ κ²°μ νμμ΅λλ€.
λ€μ΄λ² ν΄λΌμ°λ νλ«νΌ(NCP)μ μ¬μ©ν DB μλ² κ΅¬μΆ
ν¬λ λ§μ΄ μμκΈ° λλ¬Έμ μ΅λν μ΄ μλΉμ€λ₯Ό νμ©νλ©΄ μ’κ² λ€λ μκ°κ³Ό μ€μ λ€μ΄λ² ν΄λΌμ°λ νλ«νΌμμ Cloud DB for PostgreSQL
μλΉμ€λ₯Ό μ 곡νκ³ μμκΈ° λλ¬Έμ λΉκ΅μ κ°νΈνκ² μλ²λ₯Ό ꡬμΆν μ μκ² λ€λ μκ° λλ¬Έμ NCPλ₯Ό νμ©νκΈ°λ‘ κ²°μ νμμ΅λλ€.
μμΈν μ€μ λ΄μ©μ μλμ μΆκ°λ‘ μμ±ν΄λ³΄μμ΅λλ€.
(νμ§λ§ μκ°λ³΄λ€ κ°λ¨νμ§ μμκ³ , μ€νλ € μ²μ νμ©ν΄λ³΄μκΈ° λλ¬Έμ dockerλ₯Ό νμ©νλ κ² λ λΉ¨λμ μλ μκ² λ€λ μκ°μ΄ λλλ€β¦)
VPC λ° μλΈλ· μ€μ
μ²μ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ€μ νλ©΄μ PostgreSQL μλ²κ° μμ νκ² μλνλλ‘ λ€νΈμν¬ νκ²½μ ꡬμ±νμ΅λλ€.
λ€μ΄λ² ν΄λΌμ°λ νλ«νΌμμλ κΈ°λ³Έ VPCμ μλΈλ·μ΄ μμκΈ° λλ¬Έμ, IP μ£Όμλ₯Ό ν¬ν¨ν νλΌμ΄λΉ λ€νΈμν¬ μ€μ μ μΆκ°λ‘ λ§λ€μ΄μΌ νμ΅λλ€.
μ΄λ₯Ό ν΅ν΄ μΈλΆμμ λ°μ΄ν°λ² μ΄μ€μ μ κ·Όν μ μλ IPλ₯Ό μ μ΄νκ³ λ³΄μ μ€μ μ κ°ννμ΅λλ€.
-
VPC μ€μ : IP μ£Όμ λ²μλ₯Ό νλΌμ΄λΉ IP λμ(μ:
10.0.0.0/16
)μΌλ‘ μ€μ νμ¬ λ³΄μμ μ μ§νμ΅λλ€. - μλΈλ· μ€μ : κ° μλΈλ·μ ꡬλΆν΄ λ°μ΄ν°λ² μ΄μ€ μλ²μ κ°μ 리μμ€λ₯Ό λ΄λΆμ μΌλ‘ λΆλ¦¬λ λ€νΈμν¬ λ΄μ λμμ΅λλ€.
PostgreSQL μΈμ€ν΄μ€ μμ± λ° μ€μ
λ€μ΄λ² ν΄λΌμ°λ νλ«νΌμ Cloud DB for PostgreSQL
μλΉμ€λ₯Ό ν΅ν΄ μΈμ€ν΄μ€λ₯Ό μμ±νμμ΅λλ€.
μ΄λ κΈ°λ³Έ public
μ€ν€λ§μ μ κ·Όνλ €λ©΄ κΆν μ€μ μ΄ νμνμΌλ, λ€μ΄λ² ν΄λΌμ°λλ μνΌμ μ κΆνμ μ 곡νμ§ μκΈ° λλ¬Έμ, μ¬μ©μ κΆν λ΄μμ λ³λμ μ€ν€λ§(main
)λ₯Ό μμ±νμ¬ ν
μ΄λΈμ μΆκ°νλ λ°©μμΌλ‘ ꡬμ±νμμ΅λλ€.
-
μλ‘μ΄ μ€ν€λ§ μμ±:
public
λμmain
μ€ν€λ§λ₯Ό μμ±νμ¬ λ°μ΄ν°λ² μ΄μ€ ꡬ쑰λ₯Ό ꡬννμμ΅λλ€. -
ν
μ΄λΈ μμ±: μ€κ³νλ λλ‘
main
μ€ν€λ§μchannel
,user
,guest
ν μ΄λΈμ μμ±νμκ³ , μ΄ ν μ΄λΈ κ° κ΄κ³ μ€μ μ μν΄ μ€κ³ν λλ‘ μΈλ ν€λ₯Ό μ€μ νμ¬ λ°μ΄ν° κ°μ 무결μ±μ 보μ₯νμμ΅λλ€.
λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ μν μ΄κΈ° ν μ€νΈλ₯Ό IntelliJμμ μ§ννμ΅λλ€.
μ°κ²° μ λ°μνλ λ€μν λ¬Έμ λ₯Ό ν΄κ²°νμκ³ , νΉν κΆν λ¬Έμ (μ: permission denied for schema public
)λ₯Ό ν΄κ²°νκΈ° μν΄ μλ‘ μμ±ν μ€ν€λ§μ μ κ·Όνλλ‘ μ€μ νμ΅λλ€.
μ΄ κ³Όμ μμ κ° ν μ΄λΈ κ°μ μ°Έμ‘° 무결μ±μ νμΈνκ³ μ΄κΈ° λ°μ΄ν° μ½μ λ° μ‘°ν ν μ€νΈλ₯Ό μ±κ³΅μ μΌλ‘ μλ£νμ¬ λ°μ΄ν°λ² μ΄μ€κ° μ μλνλμ§ κ²μ¦νμ΅λλ€.
μλλ μμ±λ dbλ₯Ό intellijμμ νμΈνμ λ λ€μ΄μ΄κ·Έλ¨ λͺ¨μ΅μ λλ€.