๐Ÿ“ฒ๋กœ์ปฌ Oracle DB๋ฅผ AWS RDS๋กœ ์˜ฎ๊ธฐ๊ธฐ

dsunniยท2020๋…„ 6์›” 29์ผ
2

SSGSO-Project

๋ชฉ๋ก ๋ณด๊ธฐ
2/2
post-thumbnail

๋‘๋‹ฌ ๊ฐ„์˜ ๊ต์œก์ด ๋๋‚˜ ๋“œ๋””์–ด ์ €๋ฒˆ ์ฃผ ๊ธˆ์š”์ผ์— ํ•™์›์„ ์ˆ˜๋ฃŒํ–ˆ๋‹ค.๐Ÿ‘๐Ÿป๐Ÿ‘๐Ÿป

ํ•˜์ง€๋งŒ ์ˆ˜๋ฃŒ์™€๋Š” ๋ณ„๊ฐœ๋กœ SSGSO ํ”„๋กœ์ ํŠธ์— ๋งŽ์€ ์•„์‰ฌ์›€์ด ๋‚จ๋Š”๋‹ค. ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์€ ๊ธฐ๋Šฅ๋“ค ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋งˆ์ง€๋ง‰์— ๊ธ‰ํ•˜๊ฒŒ ๋จธ์ง€ํ•˜๋‹ค๋ณด๋‹ˆ ์˜จ๊ฐ– ์—๋Ÿฌ๊ฐ€ ๋‹ค ๋– ์„œ ๊ณ ์น˜๊ณ  ์‹ถ์€ ๋ถ€๋ถ„๋„ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์™„์„ฑํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค๋ผ๋ฆฌ ํ”„๋กœ์ ํŠธ๋ฅผ ์ด์–ด์„œ ์ง„ํ–‰ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.

๋‹ค์Œ์ฃผ ๋ถ€ํ„ฐ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์‹œ์ž‘ํ•  ์˜ˆ์ •์ด๋ผ ํ•™์› ์ปดํ“จํ„ฐ๋ฅผ ์„œ๋ฒ„๋กœ ๋‘๊ณ  ์žˆ๋˜ DB๋ฅผ AWS RDS๋กœ์˜ฎ๊ธฐ๊ธฐ๋กœ ํ–ˆ๋‹ค.

์ด ๊ธ€์€ ๋‹ค์Œ ๊ณผ์ •์˜ ๊ธฐ๋ก์ด๋‹ค.


๋ชฉ์ฐจ

  1. SQL Developer๋ฅผ ์ด์šฉํ•œ DB export
  2. AWS ํ”„๋ฆฌํ‹ฐ์–ด๋กœ RDS Oracle ์ƒ์„ฑ
  3. SQL Developer์™€ AWS RDS๋ฅผ ์—ฐ๊ฒฐ
  4. ๋ณต์‚ฌํ•ด๋‘” DB Script ์‹คํ–‰
  5. Spring ํ”„๋กœ์ ํŠธ์™€ AWS RDS ์—ฐ๊ฒฐ

1. SQL Developer๋ฅผ ์ด์šฉํ•œ DB export

DB์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž‘์•„์„œ SQL Developer๋ฅผ ํ†ตํ•ด ๊ฐ„๋‹จํžˆ export ํ•  ์ˆ˜ ์žˆ๋‹ค.

(1) ์ต์ŠคํฌํŠธ ๋งˆ๋ฒ•์‚ฌ ์‹คํ–‰

  • ๋„๊ตฌ(T) โ†’ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ต์ŠคํฌํŠธ(X) ์„ ํƒ

  • ์ ‘์† DB ์„ ํƒ

  • ์Šคํ‚ค๋งˆ ํ‘œ์‹œ๋Š” ์˜ฎ๊ธฐ๋ ค ํ•˜๋Š” DB์˜ ์Šคํ‚ค๋งˆ๊ฐ€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ด์ œํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค.

    • ์ฒดํฌ์‹œ ์•„๋ž˜์™€ ๊ฐ™์ด ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ƒ์„ฑ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
    CREATE TABLE "SSGSO"."ACCOMODATION"
  • ํŒŒ์ผ์˜ ์ฐพ์•„๋ณด๊ธฐ๋ฅผ ํด๋ฆญํ•ด ๊ฒฝ๋กœ ์„ค์ •

(2) ์ต์ŠคํฌํŠธํ•  ์œ ํ˜• ์ฒดํฌ

  • ์ต์ŠคํฌํŠธํ•  ์œ ํ˜•์„ ์ฒดํฌํ•˜๋ฉด ๋œ๋‹ค. ๋‹ค ์ฒดํฌํ–ˆ๋‹ค.

(3) ๊ฐ์ฒด ์ง€์ •

  • ์กฐํšŒ(K)๋ฅผ ๋ˆŒ๋Ÿฌ ๋ณต์‚ฌํ•˜๊ณ ์‹ถ์€ ๋ชจ๋“  ๊ฐ์ฒด๋“ค์„ ์„ ํƒํ•œ๋‹ค.
  • ์ „๋ถ€ ๋‹ค ์˜ฎ๊ธฐ๋ ค๋ฉด >> ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ๋œ๋‹ค.

(4) ๋ฐ์ดํ„ฐ ์ง€์ •

  • ์–ด์ฐจํ”ผ ๋ชจ๋“  ํ…Œ์ด๋ธ”์„ ๋ณต์‚ฌํ•  ํ…Œ๋‹ˆ ์œ„๋ฅผ ํ–ฅํ•˜๋Š” ํ™”์‚ดํ‘œ ๋ฒ„ํŠผ๋ฅผ ํด๋ฆญํ•œ๋‹ค.

(5) ์™„๋ฃŒ

  • ์ต์ŠคํฌํŠธ๋ผ๋Š” ์ด๋ฆ„์˜ SQL-Script ํŒŒ์ผ์ด ์ƒ์„ฑ๋œ๋‹ค.
    • Sequence, Table, Data ๋“ฑ DB ์ „์ฒด ๋ณต์‚ฌ๋ฅผ ์œ„ํ•œ ์Šคํฌ๋ฆฝํŠธ์ด๋‹ค.

๐Ÿ“Œ Oracle ๋ฒ„์ „ ํ™•์ธํ•˜๊ธฐ

๋๋‚ ๋•Œ๊นŒ์ง€ ๋๋‚œ๊ฒŒ์•„๋‹ˆ๋‹ค! Oracle ๋ฒ„์ „์„ ํ™•์ธํ•ด์„œ ๋ฉ”๋ชจํ•ด๋‘์ž.

SELECT * FROM PRODUCT_COMPONENT_VERSION;

์œ„ ๋ช…๋ น์–ด ์‹คํ–‰์„ ํ†ตํ•ด ์•Œ ์ˆ˜ ์žˆ๋‹ค.


2. AWS ํ”„๋ฆฌํ‹ฐ์–ด๋กœ RDS Oracle ์ƒ์„ฑ

  • https://aws.amazon.com/ko/ ์—์„œ ๊ณ„์ • ์ƒ์„ฑ
    • ๊ณ„์ •๋นŒ๋ ค์ค€ ์ง€์• ์–ธ๋‹ˆ ๐Ÿ˜˜๐Ÿ˜˜

RDS๋ž€?

  • RDS๋Š” (Relational Database Service)์˜ ์•ฝ์–ด๋กœ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
  • AWS RDS๋ž€ ์•„๋งˆ์กด ์›น ์„œ๋น„์Šค๊ฐ€ ์„œ๋น„์Šคํ•˜๋Š” ๋ถ„์‚ฐ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค.
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์—์„œ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์„ค์ •, ์šด์˜, ์Šค์ผ€์ผ๋ง์„ ๋‹จ์ˆœ์ผ€ ํ•˜๋„๋ก ์„ค๊ณ„๋œ ํด๋ผ์šฐ๋“œ ๋‚ด์—์„œ ๋™์ž‘ํ•˜๋Š” ์›น ์„œ๋น„์Šค์ด๋‹ค.
  • DB ๋ฐฑ์—…์ด๋‚˜ ๋ณต๊ตฌ ํ™œ์„ฑํ™” ๋“ฑ์˜ ๊ด€๋ฆฌ ํ”„๋กœ์„ธ์Šค๋“ค์„ ์ž๋™์œผ๋กœ ๊ด€๋ฆฌํ•ด์ค€๋‹ค.

๐Ÿค” EC2์— DB ์„ค์น˜ vs RDS

  • EC2์—์„œ๋Š” ์ง์ ‘ ๋ฆฌ๋ˆ…์Šค์— DB๋ฅผ ์„ค์น˜ํ•˜๊ณ  ์„œ๋น„์Šคํ•œ๋‹ค.
  • RDS๋Š” DB์˜ ์„ค์ •, ์šด์˜, ๋ฐฑ์—… ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ํŽธํ•˜๊ฒŒ ์ด์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ถ„๋ฆฌ๋œ DB ์ „์šฉ ์„œ๋ฒ„์ด๋‹ค.
  • ์‚ฌ์‹ค ๋ฐฐํฌ๊นŒ์ง€ ์ƒ๊ฐํ•˜๋ฉด EC2์œ„์— DB๋ฅผ ์„ค์น˜ํ•˜๋Š”๊ฒŒ ์ข‹๊ธด ํ•˜๋‹ค.
  • ํ•˜์ง€๋งŒ ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋Š” ์ตœ๋Œ€ํ•œ ๋งŽ!์€!๊ฒƒ์„ ๊ฒฝํ—˜ํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ผ๋‹จ RDS๋ฅผ ํ†ตํ•ด DB ์„œ๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ์ถ”ํ›„ EC2์™€ ์—ฐ๊ฒฐํ•ด ์‚ฌ์šฉํ•ด๋ณผ ์˜ˆ์ •์ด๋‹ค.

(1) ์„œ๋น„์Šค โ†’ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค RDS

(2) ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ ํด๋ฆญ

  • ํ‘œ์ค€ ์ƒ์„ฑ ํด๋ฆญ
  • ์—”์ง„์€ Oracle ์„ ํƒ
  • ์—๋””์…˜์€ Oracle Enterprise Edition
  • ๋ฒ„์ „์€ ์•„๊นŒ ํ™•์ธํ•ด๋‘์—ˆ๋˜ ๋ฒ„์ „ ์„ ํƒ (์ €๋Š” 11g์˜€์Šต๋‹ˆ๋‹ค)
    • ์‚ฌ์‹ค 11.2.0.2.0 ์ด์—ˆ๋‚˜? ์ด๋žฌ๋Š”๋ฐ ๊ทธ๋ƒฅ 11์ด๋ฉด ๋‹ค ํ˜ธํ™˜๋˜๋Š”๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค. 11์ค‘์— ๊ฐ€์žฅ ์ตœ์‹ ์ธ ๋ฒ„์ „์„ ์„ ํƒ
  • โœ”๏ธ ํ…œํ”Œ๋ฆฟ์€ ๋ฌด!์กฐ!๊ฑด ํ”„๋ฆฌ ํ‹ฐ์–ด ์„ ํƒ!!!!!!

  • DB ์ธ์Šคํ„ด์Šค ์‹๋ณ„์ž ๊ธฐ์ž…
  • ๋งˆ์Šคํ„ฐ ์•”ํ˜ธ ์„ค์ •

  • ์ธ์Šคํ„ด์Šค ํฌ๊ธฐ๋Š” db.t3.micro๋กœ ์ž๋™ ์„ค์ •
  • ์Šคํ† ๋ฆฌ์ง€๋Š” ๊ทธ๋Œ€๋กœ ๋‘๊ณ 
  • ์ตœ๋Œ€ ์Šคํ† ๋ฆฌ์ง€ ์ž„๊ณ„๊ฐ’๋งŒ 21๋กœ ๋„ฃ์–ด๋†จ๋‹ค.
    • ์ตœ๋Œ€ ์Šคํ† ๋ฆฌ์ง€ ์ž„๊ณ„๊ฐ’์€ ํ•ด๋‹น DB ์ธ์Šคํ„ด์Šค๊ฐ€ ์ž๋™ ํ™•์žฅ๋  ์ˆ˜ ์žˆ๋Š” ์ œํ•œ ํฌ๊ธฐ์ด๋‹ค.
    • ๋‚˜๋Š” ์ซ„๋ณด๋ผ ์ตœ์†Œ์ธ 21๋กœ ๋„ฃ์–ด๋†จ๋‹ค.๐Ÿ˜Ž

  • ์—ฐ๊ฒฐ์—์„œ ์ถ”๊ฐ€ ์—ฐ๊ฒฐ ๊ตฌ์„ฑ์„ ํด๋ฆญ
  • ํผ๋ธ”๋ฆญ ์•ก์„ธ์Šค ๊ฐ€๋Šฅ์„ ์˜ˆ๋กœ ๋‘์–ด์•ผํ•œ๋‹ค!
    • ์™ธ๋ถ€์—์„œ DB ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•ด์•ผ ํŒ€์›๋“ค๊ณผ ๋ฃฐ๋ฃจ๋ž„๋ผ ์ž‘์—…์ด ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์ฆ์€ ์•”ํ˜ธ ์ธ์ฆ์€ ์„ ํƒ
  • ์ถ”๊ฐ€ ๊ตฌ์„ฑ์—์„œ ๋ฐฑ์—…์€ ๋น„ํ™œ์„ฑํ™”ํ–ˆ๋‹ค.
    • ํ”„๋ฆฌํ‹ฐ์–ด์—์„œ๋Š” ๋ฐฑ์—… ๋ฐ์ดํ„ฐ๊ฐ€ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ฐจ์ง€ํ•ด ๊ณผ๊ธˆ์ด ์ƒ๊ธธ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ.. ใ…œ.ใ…œ
  • ์›”๋ณ„ ์ถ”์ • ์š”๊ธˆ์„ ํ™•์ธํ•œ ํ›„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ์„ ํด๋ฆญํ•˜๋ฉด ๋๋‚œ๋‹ค! ์‰ฝ์ฆ?๐Ÿ˜


3. SQL Developer์™€ AWS RDS๋ฅผ ์—ฐ๊ฒฐ

(1) ๋‚ด DB ์ธ์Šคํ„ด์Šค ํ™•์ธํ•˜๊ธฐ

  • ์•„๊นŒ ๋“ค์–ด๊ฐ”๋˜ ์„œ๋น„์Šค โ†’ RDS๋ฅผ ๋“ค์–ด๊ฐ€๋ฉด ๋ฆฌ์†Œ์Šค๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • DB ์ธ์Šคํ„ด์Šค (1/40) ํด๋ฆญ
  • ์ƒ์„ฑ๋˜๊ธฐ๊นŒ์ง€ ์•ฝ 5~10๋ถ„์ •๋„ ์†Œ์š”๋œ๋‹ค. ์ž ๊น ๋ˆˆ๋ถ™์ด๊ณ  ๋ˆ„์›Œ์žˆใ…ˆ ใ….. ๐Ÿ›Œ๐Ÿป๐Ÿ›Œ๐Ÿป
  • ์ƒ์„ฑ๋˜๋ฉด DB ์‹๋ณ„์ž ๋ถ€๋ถ„์„ ํด๋ฆญ

  • ์—ฐ๊ฒฐ & ๋ณด์•ˆ์—์„œ ์—”๋“œํฌ์ธํŠธ์™€ ํฌํŠธ๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ธฐ๋กํ•ด๋‘์ž
  • ๊ตฌ์„ฑ์—์„œ DB ์ด๋ฆ„, ๋งˆ์Šคํ„ฐ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ํ™•์ธํ•˜๊ณ  ๊ธฐ๋กํ•ด๋‘์ž
    • ํŠน๋ณ„ํ•œ ์„ค์ •์ด ์—†์—ˆ๋‹จ๋ฉด DB ์ด๋ฆ„์€ ORCL๋กœ ๋˜์–ด์žˆ์„๊ฑฐ๋‹ค.

(2) SQL Developer์—์„œ ์ ‘์†ํ•˜๊ธฐ

  • SQL Developer์—์„œ ์ƒˆ ์ ‘์† ์„ ํด๋ฆญ
  • ์ ‘์† ์ด๋ฆ„ : ์•„๋ฌด ์ด๋ฆ„์ด๋‚˜ ์ ์œผ๋ฉด ๋œ๋‹ค. ์ €๋Š” aws_ํ”„๋กœ์ ํŠธ์ด๋ฆ„์œผ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค
  • ์‚ฌ์šฉ์ž ์ด๋ฆ„ : ์„ค์ •ํ–ˆ๋˜ ๋งˆ์Šคํ„ฐ ์‚ฌ์šฉ์ž์ด๋ฆ„ (admin)
  • ๋น„๋ฐ€๋ฒˆํ˜ธ : ๋งˆ์Šคํ„ฐ ์‚ฌ์šฉ์ž์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ
  • ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ : ์•„๊นŒ ์—ฐ๊ฒฐ & ๋ณด์•ˆ ํƒญ์—์„œ ํ™•์ธํ–ˆ๋˜ ์—”๋“œํฌ์ธํŠธ
  • ํฌํŠธ : ์œ„์™€ ๋™์ผ
  • SID : ์œ„์™€ ๋™์ผ (ORCL)
  • ํ…Œ์ŠคํŠธ๋ฅผ ํด๋ฆญํ•ด๋ณด๊ณ  ์„ฑ๊ณต์ด ๋œจ๋ฉด ์™„๋ฃŒ!


4. ๋ณต์‚ฌํ•ด๋‘” DB Script ์‹คํ–‰

AWS RDS๋„ ์ƒ์„ฑํ•˜๊ณ  SQL Developer๋กœ ์ ‘์†๋„ ์™„๋ฃŒํ–ˆ๋‹ค.

์ด์ œ ์•„๊นŒ export ํ•ด๋‘” DB Script๋ฅผ ์‹คํ–‰ํ•˜๋ฉด๋œ๋‹ค.

DB Script ์‹คํ–‰

  • ์•„๊นŒ ์ƒ์„ฑํ•œ ์ต์ŠคํฌํŠธ SQL-Script๋ฅผ ์ „์ฒด ๋ณต์‚ฌ(ctrl+a)ํ•ด์„œ ์›Œํฌ์‹œํŠธ์— ๋ถ™์—ฌ๋„ฃ๊ธฐ๋ฅผ ํ•œ๋‹ค.
  • ํ•˜์ง€๋งŒ ๋‚˜๋Š”....โ˜… ์•„๊นŒ ์ต์ŠคํฌํŠธํ•  ๋•Œ ์Šคํ‚ค๋งˆ ํ‘œ์‹œ๋ฅผ ๋ˆŒ๋ €๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ’์ด ์ œ๋Œ€๋กœ ๋“ค์–ด๊ฐ€์งˆ ์•Š์•˜๋‹ค.
  • ๋”ฐ๋ผ์„œ Word์— SQL-Script๋ฅผ ๋ถ™์—ฌ๋„ฃ๊ธฐํ•˜๊ณ  ๋ฐ”๊พธ๊ธฐ๋ฅผ ํด๋ฆญํ•ด ์Šคํ‚ค๋งˆ ๋ถ€๋ถ„์„ ์‚ญ์ œํ–ˆ๋‹ค.
    • "SSGSO".
    • SSGSO.
    • ์ฐพ์„ ๋‚ด์šฉ์— ๋‘ ๊ฐœ๋ฅผ ์ฐจ๋ก€๋กœ ๋„ฃ๊ณ  ๋ฐ”๊ฟ€ ๋‚ด์šฉ์„ ๋นˆ์นธ์œผ๋กœ ํ–ˆ๋‹ค. ๋‹ค์‹œ ๋ณต๋ถ™ํ•˜๊ณ  ์ „์ฒด ์‹คํ–‰ํ–ˆ๋”๋‹ˆ ์ •์ƒ์ ์œผ๋กœ DB์— ๊ฐ’์ด ๋“ค์–ด๊ฐ”๋‹ค!๐Ÿฅ๐Ÿฅ๐Ÿฅ


5. Spring ํ”„๋กœ์ ํŠธ์™€ AWS RDS ์—ฐ๊ฒฐ

๋งˆ์ง€๋ง‰์œผ๋กœ Spring Framework ํ”„๋กœ์ ํŠธ์™€ AWS RDS๋ฅผ ์—ฐ๊ฒฐํ•˜๋ฉด ๋œ๋‹ค!

root-context.xml

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
    <property name="url" value="jdbc:oracle:thin:@์—”๋“œํฌ์ธํŠธ:1521:DB์ด๋ฆ„(ORCL)" />
    <property name="username" value="ํ˜ธ์ŠคํŠธ ์ด๋ฆ„" />
    <property name="password" value="๋น„๋ฐ€๋ฒˆํ˜ธ" />
</bean>
  • DB ์—ฐ๊ฒฐ ๋ถ€๋ถ„์„ root-context.xml์— ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ๋‹ค.

  • dataSource ๋ถ€๋ถ„์—์„œ ์„ธ ๊ฐ€์ง€๋ฅผ ์œ„์˜ ์˜ˆ์‹œ์™€ ๊ฐ™์ด ์ˆ˜์ •ํ•ด์ค˜์•ผํ•œ๋‹ค.

    1. url : ์—”๋“œํฌ์ธํŠธ, ํฌํŠธ, DB ์ด๋ฆ„
    2. username : ํ˜ธ์ŠคํŠธ ์ด๋ฆ„
    3. password : ๋น„๋ฐ€๋ฒˆํ˜ธ
  • ๋!

profile
https://dsunni.tistory.com/ ์ด์‚ฌ๊ฐ‘๋‹ˆ๋‹ต

0๊ฐœ์˜ ๋Œ“๊ธ€