[LG U+ ์œ ๋ ˆ์นด 3๊ธฐ]MongoDB Compass CRUD ์‹ค์Šต ์ •๋ฆฌ

2025. 10. 21. 11:56ใ†DB/NoSQL

๐Ÿงฉ MongoDB Compass CRUD ์‹ค์Šต ์ •๋ฆฌ

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” MongoDB Compass๋ฅผ ์ด์šฉํ•ด ๊ธฐ๋ณธ์ ์ธ CRUD(Create, Read, Update, Delete) ์‹ค์Šต์„ ์ง„ํ–‰ํ–ˆ๋‹ค.
MongoDB์˜ ๊ณต์‹ GUI ๋„๊ตฌ์ธ Compass๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฒ•์„ ์ตํžˆ๊ณ ,
๋ช…๋ น์–ด(cmd) ๊ธฐ๋ฐ˜์œผ๋กœ๋„ ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•ด๋ณด์•˜๋‹ค.
์ฐธ๊ณ  ์ž๋ฃŒ: W3Schools MongoDB Tutorial


โถ MongoDB Compass๋ž€? & CMD์—์„œ์˜ ์‹คํ–‰

MongoDB Compass๋Š” MongoDB์˜ ๊ณต์‹ GUI(Graphical User Interface) ํˆด๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜์„ ์‹œ๊ฐ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๋‹ค.
CLI(Command Line Interface) ํ™˜๊ฒฝ์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ง์ ‘ ์ž…๋ ฅํ•˜๋Š” ๋Œ€์‹ , Compass์—์„œ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ํ™•์ธํ•˜๊ณ  ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ“˜ CMD์—์„œ MongoDB ์‹คํ–‰ํ•˜๊ธฐ
MongoDB๋ฅผ ์„ค์น˜ํ•œ ํ›„, ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ(cmd)์—์„œ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์„œ๋ฒ„๊ฐ€ ์‹คํ–‰๋œ๋‹ค.

# MongoDB ์„œ๋ฒ„ ์‹คํ–‰
mongod

# ๋ณ„๋„ ํ„ฐ๋ฏธ๋„์—์„œ MongoDB ์‰˜ ์ ‘์†
mongosh

์ดํ›„, Compass์—์„œ localhost:27017๋กœ ์ ‘์†ํ•˜๋ฉด CLI์™€ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™˜๊ฒฝ์„ ์‹œ๊ฐ์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.


โท GUI ์—ฐ๊ฒฐ ๊ณผ์ •

MongoDB Compass ์‹คํ–‰ ํ›„, ๋‹ค์Œ ๊ณผ์ •์„ ๊ฑฐ์ณ ์—ฐ๊ฒฐํ•œ๋‹ค.

  1. MongoDB Compass ์‹คํ–‰
  2. Connection String ์ž…๋ ฅ: mongodb://localhost:27017
  3. Connect ๋ฒ„ํŠผ ํด๋ฆญ
  4. ์ขŒ์ธก์— admin, config, local ๋“ฑ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™•์ธ

์—ฐ๊ฒฐ ํ›„, ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‚˜ ์ปฌ๋ ‰์…˜์„ GUI ์ƒ๋‹จ์˜ “Create Database” ๋ฒ„ํŠผ์„ ํ†ตํ•ด ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.


โธ CRUD ๋ช…๋ น ์‹ค์Šต

MongoDB Compass ๋‚ด๋ถ€์˜ Shell(mongosh) ํƒญ์„ ์ด์šฉํ•ด CRUD ๋ช…๋ น์–ด๋ฅผ ์ง์ ‘ ์‹คํ–‰ํ–ˆ๋‹ค.
์•„๋ž˜๋Š” ์‹ค์Šต์— ์‚ฌ์šฉํ•œ ์ฃผ์š” ๋ช…๋ น์–ด๋“ค์ด๋‹ค.

// โ‘  ์ปฌ๋ ‰์…˜ ์ƒ์„ฑ (Create)
db.createCollection("book")

// โ‘ก ๋ฌธ์„œ ์‚ฝ์ž… (Insert)
db.book.insertOne({
  title: "์ž๋ฐ”์˜ ์ •์„",
  author: "๋‚จ๊ถ์„ฑ",
  price: 25000,
  stock: 12
})

// โ‘ข ๋ฐ์ดํ„ฐ ์กฐํšŒ (Read)
db.book.find()

// โ‘ฃ ๋ฐ์ดํ„ฐ ์ˆ˜์ • (Update)
db.book.updateOne(
  { title: "์ž๋ฐ”์˜ ์ •์„" },
  { $set: { stock: 15 } }
)

// โ‘ค ๋ฐ์ดํ„ฐ ์‚ญ์ œ (Delete)
db.book.deleteOne({ title: "์ž๋ฐ”์˜ ์ •์„" })

๋ช…๋ น์–ด๋Š” Compass์˜ Shell๋ฟ ์•„๋‹ˆ๋ผ cmd ํ™˜๊ฒฝ(mongosh)์—์„œ๋„ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•œ๋‹ค.

 


โน ์‹ค์Šต ๊ฒฐ๊ณผ ์Šคํฌ๋ฆฐ์ƒท

MongoDB Compass GUI๋ฅผ ํ†ตํ•ด ์ปฌ๋ ‰์…˜ ์ƒ์„ฑ ๋ฐ CRUD ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ๊ฒฐ๊ณผ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

๐Ÿ“ท MongoDB Compass์—์„œ book ์ปฌ๋ ‰์…˜ ์ƒ์„ฑ ๋ฐ ๋ช…๋ น ์‹คํ–‰ ๊ฒฐ๊ณผ


โบ ๊ฐœ๋… ์š”์•ฝ

์šฉ์–ด ์„ค๋ช…
Database ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋Š” ๋…ผ๋ฆฌ์  ๊ณต๊ฐ„. ์—ฌ๋Ÿฌ ์ปฌ๋ ‰์…˜(collection)์„ ํฌํ•จํ•œ๋‹ค.
Collection RDBMS์˜ ํ…Œ์ด๋ธ”(table)์— ํ•ด๋‹นํ•˜๋Š” ๋‹จ์œ„. ๋ฌธ์„œ(document)๋“ค์ด ์ €์žฅ๋œ๋‹ค.
Document RDBMS์˜ ํ–‰(row)์— ํ•ด๋‹นํ•˜๋Š” ๋ฐ์ดํ„ฐ ๋‹จ์œ„๋กœ, JSON ํ˜•ํƒœ๋กœ ์ €์žฅ๋œ๋‹ค.
Field ๊ฐ ๋ฌธ์„œ(document)์˜ ์†์„ฑ(ํ‚ค-๊ฐ’ ๊ตฌ์กฐ). ์˜ˆ: title, author, price
Operator ($) MongoDB ์ฟผ๋ฆฌ๋‚˜ ์ˆ˜์ • ๋ช…๋ น์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ‚ค์›Œ๋“œ. ์˜ˆ: $set, $gt, $inc ๋“ฑ

โป ์ •๋ฆฌ ๋ฐ ๋А๋‚€์ 

MongoDB Compass๋ฅผ ์‚ฌ์šฉํ•˜๋‹ˆ CLI๋ณด๋‹ค ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ํ•œ๋ˆˆ์— ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.
ํŠนํžˆ, GUI๋กœ ์ปฌ๋ ‰์…˜ ์ƒ์„ฑ → ๋ฌธ์„œ ์‚ฝ์ž… → ์ˆ˜์ • → ์‚ญ์ œ ๊ณผ์ •์„ ์‰ฝ๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์„œ
MongoDB์˜ ๊ธฐ๋ณธ CRUD ๊ฐœ๋…์„ ์‹œ๊ฐ์ ์œผ๋กœ ์ดํ•ดํ•˜๋Š” ๋ฐ ํฐ ๋„์›€์ด ๋˜์—ˆ๋‹ค.
๊ณต์‹ ๋ฌธ์„œ์™€ ํ•จ๊ป˜ W3Schools(https://www.w3schools.com)์˜ ์˜ˆ์ œ(MongoDB CRUD Tutorial)๋ฅผ ์ฐธ๊ณ ํ•˜๋ฉฐ ์‹ค์Šต์„ ์ง„ํ–‰ํ–ˆ๋‹ค.

 

๐ŸŸ  ์š”์•ฝ ๋ฌธ์žฅ:
MongoDB Compass๋Š” CLI๋ณด๋‹ค ์ง๊ด€์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” ๊ณต์‹ GUI ๋„๊ตฌ๋กœ,
W3Schools์˜ ์˜ˆ์ œ๋ฅผ ์ฐธ๊ณ ํ•˜๋ฉฐ CRUD๋ฅผ ์‹ค์Šตํ•ด๋ณด๋ฉด MongoDB์˜ ํ•ต์‹ฌ ๊ตฌ์กฐ์™€ ์ฟผ๋ฆฌ ๊ฐ๊ฐ์„ ๋น ๋ฅด๊ฒŒ ์ตํž ์ˆ˜ ์žˆ๋‹ค.

๊ธฐํšŒ๊ฐ€๋˜๋ฉด ํ”„๋กœ์ ํŠธ์— ๋น„์ •ํ˜•๋ฐ์ดํ„ฐ๊ฐ€ ๋งŽ์ดํ•„์š”ํ• ๊ฒฝ์šฐ NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์ •ํ•œํ›„ MongoDB๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ง„ํ–‰ํ•ด๋ณด๊ณ ์‹ถ๋‹ค! 

'DB > NoSQL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[LG U+ ์œ ๋ ˆ์นด 3๊ธฐ] MongoDB ๊ธฐ๋ณธ CRUD ์‹ค์Šต  (0) 2025.10.21
NoSQL๊ณผ MongoDB ์ดํ•ด  (0) 2025.10.21