λ°μ΄ν„°λ² μ΄μŠ€

DB

[DB] κ΅μ°©μƒνƒœ(Dead Lock)λž€?

DB ꡐ착 μƒνƒœ(Dead Lock) λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ ꡐ착 μƒνƒœλŠ” μ—¬λŸ¬ 개의 νŠΈλžœμž­μ…˜λ“€μ΄ μ‹€ν–‰ν•˜μ§€ λͺ»ν•˜κ³  μ„œλ‘œ λ¬΄ν•œμ • κΈ°λ‹€λ¦¬λŠ” μƒνƒœλ₯Ό λ§ν•œλ‹€. 즉, 두 개 μ΄μƒμ˜ νŠΈλžœμž­μ…˜μ΄ νŠΉμ • μžμ›μ˜ lock을 νšλ“ν•œ 채 λ‹€λ₯Έ νŠΈλžœμž­μ…˜μ΄ μ†Œμœ ν•˜κ³  μžˆλŠ” μž κΈˆμ„ μš”κ΅¬ν•˜λ©΄ 아무리 기닀렀도 상황이 λ°”λ€Œμ§€ μ•Šμ€ μƒνƒœμ΄λ‹€. βž• μš΄μ˜μ²΄μ œμ—μ„œμ˜ ꡐ착 μƒνƒœλŠ” 각각의 ν”„λ‘œμ„ΈμŠ€κ°€ μ„œλ‘œμ˜ μžμ›μ„ μ μœ ν•˜κΈ° μœ„ν•΄ λŒ€κΈ°ν•˜λ©΄μ„œ μƒκΈ°λŠ” 문제λ₯Ό λ§ν•œλ‹€. β–ͺ️ κ΅μ°©μƒνƒœκ°€ μΌμ–΄λ‚˜λŠ” 상황 νŠΈλžœμž­μ…˜ 1이 ν…Œμ΄λΈ” B에 insertλ₯Ό ν•˜κ³ , νŠΈλžœμž­μ…˜ 2κ°€ ν…Œμ΄λΈ” A에 insertλ₯Ό ν•˜κ³  λ‚˜μ„œ μ„œλ‘œκ°€ lock을 κ±Έμ—ˆλ˜ 행에 insert μž‘μ—…μ„ μ‹œλ„ν•œλ‹€λ©΄ 두 개의 νŠΈλžœμž­μ…˜ λͺ¨λ‘ waiting이 λ°œμƒν•˜κ³  κ΅μ°©μƒνƒœ(Dead Lock)에 λΉ μ§€κ²Œ λœλ‹€. κ΅μ°©μƒνƒœ 해결방법 ..

DB

DB μ •κ·œν™”λž€?

πŸ”Έμ •κ·œν™”λž€? μ΄μƒν˜„μƒμ΄ μžˆλŠ” λ¦΄λ ˆμ΄μ…˜μ„ λΆ„ν•΄ν•΄ν•˜μ—¬ μ΄μƒν˜„μƒμ„ μ—†μ• λŠ” κ³Όμ • μ΄μƒν˜„μƒμ΄ μ‘΄μž¬ν•˜λŠ” λ¦΄λ ˆμ΄μ…˜μ„ λΆ„ν•΄ν•˜μ—¬ μ—¬λŸ¬ 개의 λ¦΄λ ˆμ΄μ…˜μ„ μƒμ„±ν•˜κ²Œ λœλ‹€. 이λ₯Ό λ‹¨κ³„λ³„λ‘œ κ΅¬λΆ„ν•˜μ—¬ μ •κ·œν˜•μ΄ λ†’μ•„μ§ˆ 수둝 μ΄μƒν˜„μƒμ΄ μ€„μ–΄λ“€κ²Œ λœλ‹€. 🫧 제1 μ •κ·œν˜• (1NF) 각 컬럼이 ν•˜λ‚˜μ˜ μ†μ„±λ§Œ κ°€μ Έμ•Ό ν•œλ‹€. ν•˜λ‚˜μ˜ μ»¬λŸΌμ€ 같은 μ’…λ₯˜λ‚˜ νƒ€μž…μ˜ 값을 κ°€μ Έμ•Ό ν•œλ‹€. 각 컬럼이 μœ μΌν•œ 이름을 κ°€μ Έμ•Όν•œλ‹€. 칼럼의 μˆœμ„œκ°€ 상관없어야 ν•œλ‹€. 학생 번호 이름 κ³Όλͺ© 101 μ•„μ΄μœ  운영체제, DB 102 ν•œνš¨μ£Ό μžλ°” ν•΄λ‹Ή ν…Œμ΄λΈ”μ€ κ³Όλͺ©μ—μ„œ ν•˜λ‚˜λ§Œμ˜ 속성을 가지고 μžˆμ§€ μ•ŠμŒ!! ν•΄κ²° ν•™μƒλ²ˆν˜Έ 이름 κ³Όλͺ© 101 μ•„μ΄μœ  운영체제 101 μ•„μ΄μœ  DB 102 ν•œνš¨μ£Ό μžλ°” μΉ΅ 칼럼이 μ›μž 값을 갖도둝 ν•˜λ©΄ 제1 μ •κ·œν˜•μ„ λ§Œμ‘±ν•  수 있음 🫧 제2 μ •κ·œν˜• ..