π νΈλμμ μ΄λ?
λ°μ΄ν°λ² μ΄μ€μ μνλ₯Ό λ³νμν€κΈ° μν΄ μννλ μμ λ¨μ
μνλ₯Ό λ³νμν¨λ€ = SQL μ§μμ΄λ₯Ό ν΅ν΄ DBμ μ κ·Όνλκ² (SELECT, INSERT, DELETE, UPDATE)
μ½κ² λ§ν΄ νκΊΌλ²μ μνλμ΄μΌ ν μ°μ°μ λͺ¨μλμ κ²μΌλ‘, μ°μ°λ€μ λͺ¨λ μ²λ¦¬νμ§ λͺ»ν κ²½μ°μλ μ μνλ‘ λ³΅κ΅¬νλ€.
μμ μ μΌλΆλ§ μ μ©λλ νμμ΄ λ°μνμ§ μλλ€!
→ μμ μ μμ μ±μ 보μ₯ν΄μ€λ€.
μ¬μ©μ Aκ° μ¬μ©μ Bμκ² λ§μμ μ‘κΈνλ€.
1. μ¬μ©μ Aμ κ³μ’μμ λ§μμ μ°¨κ°νλ€.
2. μ¬μ©μ Bμ κ³μ’μμ λ§μμ μΆκ°νλ€.
μΆκΈ UPDATEλ¬Έ + μ
κΈ UPDATEλ¬Έ
μ΄λ₯Ό ν΅νμ΄ νλμ νΈλμμ
μ΄λΌκ³ νλ€.
μ λ 쿼리문 λͺ¨λ μ±κ³΅μ μΌλ‘ μλ£λμ΄μΌλ§ νλμ μμ
, νΈλμμ
μ΄ μλ£λλ κ²μ΄λ€. = commit
μμ
λ¨μμ μνλ 쿼리 μ€ νλλΌλ μ€ν¨νλ©΄ λͺ¨λ 쿼리문μ μ·¨μνκ³ μ΄μ μνλ‘ λμκ°λ€. = rollback
νΈλμμ νΉμ§
- μμμ±
νΈλμμ μ΄ dbμ λͺ¨λ λ°μλκ±°λ νΉμ μ ν λ°μλμ§ μμμΌ νλ€. - μΌκ΄μ±
νΈλμμ μ μμ μ²λ¦¬ κ²°κ³Όλ νμ μΌκ΄μ± μμ΄μΌ νλ€. - λ
립μ±
λ μ΄μμ νΈλμμ μ΄ λμμ λ³ν μ€νλκ³ μμ λ μ΄λ€ νΈλμμ λ λ€λ₯Έ νΈλμμ μ°μ°μ λΌμ΄λ€ μ μλ€. - μ§μμ±
νΈλμμ μ΄ μ±κ³΅μ μΌλ‘ μλ£λμμΌλ©΄, κ²°κ³Όλ μꡬμ μΌλ‘ λ°μλμ΄μΌ νλ€.
νΈλμμ μ°μ°
- commit
νΈλμμ μ΄ μ±κ³΅μ μΌλ‘ μνλμμμ μ μΈνλ μ°μ°μΌλ‘, COMMIT **** μ°μ°μ μ€νμ ν΅ν΄ νΈλμμ μ μνμ΄ μλ£λμμμ μ μΈνκ³ κ·Έ κ²°κ³Όλ₯Ό μ΅μ’ dbμ λ°μνλ€. - rollback
νΈλμμ μνμ΄ μ€ν¨νμμ μ μΈνκ³ μμ μ μ·¨μνλ μ°μ°μΌλ‘, νΈλμμ μ΄ μνλλ λμ€ μΌλΆ μ°μ°μ΄ μ²λ¦¬λμ§ λͺ»ν μν©μ΄λΌλ©΄ rollback μ°μ°μ μ€ννμ¬ νΈλμμ μνμ΄ μ€ν¨νμμ μ μΈνκ³ μν μ κ³Ό μΌκ΄λ μνλ‘ λλλ €μΌ νλ€.
νΈλμμ μν
- Active
νΈλμμ νλ μν, νΈλμμ μ΄ μ€ν μ€μ΄λ©° λμ μ€μΈ μνλ₯Ό λ§νλ€. - Partially Committed
νΈλμμ μ μ»€λ° λͺ λ Ήμ΄ λμ°©ν μν
νΈλμμ μ commit μ΄μ sqlλ¬Έμ΄ μνλκ³ , commitλ§ λ¨μ μνλ₯Ό λ§νλ€. - Failed
νΈλμμ μ€ν¨ μν, νΈλμμ μ΄ μ μμ μΌλ‘ μ§νλ μ μλ μνλ₯Ό λ§νλ€. - Commited
νΈλμμ μλ£ μν, νΈλμμ μ΄ μ μμ μΌλ‘ μλ£λ μνλ₯Ό λ§νλ€. - Aborted
νΈλμμ μ·¨μ μν, νΈλμμ μ΄ μ·¨μλκ³ μ€ν μ΄μ λ°μ΄ν°λ‘ λμκ° μνλ₯Ό λ§νλ€.
νΈλμμ κ΄λ¦¬λ₯Ό μν DBMSμ μ λ΅
- UNDO
Buffer κ΅μ²΄λ transactionκ³Όλ 무κ΄νκ² bufferμ μνμ λ°λΌμ κ²°μ λλ€. μ΄λ‘ μΈν΄ μ μμ μΌλ‘ μ’ λ£λμ§ μμ transactionμ΄ λ³κ²½ν pageλ€μ μμ 볡ꡬ λμ΄μΌ νλλ° μ΄λ₯Ό undoλΌκ³ νλ€. (μ¬μ©μμ μμ μ μμνλ‘ λλ¦°λ€) - REDO
μ΄λ―Έ 컀λ°ν νΈλμμ μ μμ μ μ¬λ°μνλ 볡ꡬ μμ (볡ꡬν λ μ¬μ©μκ° νλ μμ μ κ·Έλλ‘ λ€μ)
'CS' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
κ΅μ°©μν (0) | 2024.11.16 |
---|---|
μ¨λ νν°(3rd party)λ? (0) | 2024.11.14 |
SQL - μ μ₯ νλ‘μμ (Stored Procedure) (2) | 2024.11.12 |
B Tree & B+ Tree (0) | 2024.11.11 |
SQL - μΈλ±μ€(Index) (3) | 2024.11.10 |