DB
8์ฅ ์ค๊ณ
"E-R ๋ชจ๋ธ & ๋ฆด๋ ์ด์ ๋ณํ ๊ท์น์ ์ด์ฉํ" ์ค๊ณ
โถ 1๋จ๊ณ : ์๊ตฌ ์ฌํญ ๋ถ์
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฉ๋ ํ์
- ๊ฒฐ๊ณผ๋ฌผ : ์๊ตฌ ์ฌํญ ๋ช ์ธ์
โถ 2๋จ๊ณ : ๊ฐ๋ ์ ์ค๊ณ
- DBMS์ ๋ ๋ฆฝ์ ์ธ ๊ฐ๋ ์ ์คํค๋ง ์ค๊ณ
- ์๊ตฌ ์ฌํญ ๋ถ์ ๊ฒฐ๊ณผ๋ฌผ์ ๊ฐ๋ ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ด์ฉํด์ ๊ฐ๋ ์ ๊ตฌ์กฐ๋ก ํํํ๋ค (๊ฐ๋ ์ ๋ชจ๋ธ๋ง)
- ๊ฐ๋ ์ ๋ชจ๋ธ๋ง ๊ณผ์ : ๊ฐ์ฒด์ ์์ฑ ์ถ์ถ⇒ ๊ด๊ณ ์ถ์ถ ⇒ E-R ๋ค์ด์ด๊ทธ๋จ ์์ฑ
- ๊ฒฐ๊ณผ๋ฌผ : ๊ฐ๋ ์ ์คํค๋ง ⇒ E-R๋ค์ด์ด๊ทธ๋จ
โถ3๋จ๊ณ : ๋ ผ๋ฆฌ์ ์ค๊ณ
- E_R๋ค์ด์ด๊ทธ๋จ์ ๋ฆด๋ ์ด์ ์คํค๋ง๋ก ๋ณํํ๋ ๊ท์น
- ๊ท์น 1๋ฒ ~5๋ฒ ์กด์ฌํจ
- 1๋ฒ ๋ชจ๋ ๊ฐ์ฒด๋ ๋ฆด๋ ์ด์ ์ผ๋ก ๋ณํ
- 2๋ฒ ๋ค๋๋ค ๊ด๊ณ๋ ๋ฆด๋ ์ด์ ์ผ๋ก ๋ณํ
- 3๋ฒ ์ผ๋๋ค ๊ด๊ณ๋ ์ธ๋ํค๋ก ํํ
- 4๋ฒ ์ผ๋์ผ ๊ด๊ณ๋ ์ธ๋ํค๋ก ํํ
- 5๋ฒ ๋ค์ค ๊ฐ ์์ฑ์ ๋ฆด๋ ์ด์ ์ผ๋ก ๋ณํ
- ๊ฒฐ๊ณผ๋ฌผ: ๋ ผ๋ฆฌ์ ์คํค๋ง (๋ฆด๋ ์ด์ ์คํค๋ง)
โถ4๋จ๊ณ : ๋ฌผ๋ฆฌ์ ์ค๊ณ
- DBMS๋ก ๊ตฌํ ๊ฐ๋ฅํ ๋ฌผ๋ฆฌ์ ๊ตฌ์กฐ ์ค๊ณ (ํ๋์จ์ด,์ด์์ฒด์ ํน์ฑ ๊ณ ๋ ค)
- ๊ฒฐ๊ณผ๋ฌผ : ๋ฌผ๋ฆฌ์ ์คํค๋ง
โถ5๋จ๊ณ : ๊ตฌํ
- SQL ๋ฌธ์ ์์ฑํํ DBMS์์ ์คํํ์ฌ DB์์ฑ
9์ฅ ์ ๊ทํ
"์ ๊ทํ์ ์ด์ฉํ" ์ค๊ณ
โถ์ด์ํ์
- ๋ถํ์ํ ๋ฐ์ดํฐ ์ค๋ณต์ผ๋ก ์ธํ ์ฐ์ฐ ์ํ์์ ๋ฐ์ํ๋ ๋ถ์์ฉ
โถ์ด์ํ์ ์ข ๋ฅ
- ์ฝ์ ์ด์ : ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๊ธฐ ์ํด ๋ถํ์ํ ๋ฐ์ดํฐ๋ ํจ๊ป ์ผ์ ํด์ผํ๋ ๋ฌธ์
- ๊ฐฑ์ ์ด์ : ์ค๋ณต ํฌํ ์ค ์ผ๋ถ๋ง ์์ ํด์ ๋ฐ์ดํฐ๊ฐ ๋ถ์ผ์นํ๊ฒ ๋๋ ๋ชจ์์ด ๋ฐ์ ๋ฌธ์
- ์ญ์ ์ด์ : ๊ผญ ํ์ํ ๋ฐ์ดํฐ ๊น์ง ์์ค ๋๋ ์ฐ์ ์ญ์ ํ์ ๋ฐ์ ๋ฌธ์
โถ ํจ์์ ์ข ์์ฑ FD Functional Dependency
: ์์ฑ๋ค ๊ฐ์ ๊ด๋ จ์ฑ
โถ ํจ์ ์ข ์
- X๊ฐ Y๋ฅผ ํจ์์ ์ผ๋ก ๊ฒฐ์ ํ๋ค. X → Y
- ํ๋์ X๊ฐ์ ๋ํ Y๊ฐ์ด ํญ์ ํ๋์
โถ ํจ์ ์ข ์ ๊ด๊ณ ํ๋จ(1)
- ํจ์ ์ข ์ ๋ค์ด์ด๊ทธ๋จ
- ํจ์ ์ข ์ ๊ด๊ณ ํ๋จ ์ ์ ์ฌํญ
์์ฑ ์์ฒด์ ํน์ฑ,์๋ฏธ ๊ธฐ๋ฐ์ผ๋ก ํจ์ ์ข ์์ฑ์ ํ๋จ
โถ ํจ์ ์ข ์ ๊ด๊ณ ํ๋จ (2)
- ์์ ํจ์ ์ข ์ (FFD) =์ผ๋ฐ์ ์ธ ํจ์ ์ข ์ : ์์ฑ ์งํฉ Y ๊ฐ X์ ํจ์์ ์ผ๋ก ์ข ์ ๋์ด์์ (์ ์ฒด๊ฐ ์๋ ์ผ๋ถ๋ถ์๋ ์ข ์ X)
- ๋ถ๋ถ ํจ์ ์ข ์ (PFD) : ์์ฑ ์งํฉ Y ๊ฐ X์ ์ ์ฒด๊ฐ ์๋ ์ผ๋ถ๋ถ์๋ ํจ์์ ์ข ์๋จ
- ๊ณ ๋ คํ ํ์ ์๋ ํจ์ ์ข ์ ๊ด๊ณ : 1. ๊ฒฐ์ ์ = ์ข ์์ , 2. ๊ฒฐ์ ์๊ฐ ์ข ์์๋ฅผ ํฌํจ
โถ ์ ๊ทํ
- ๊ฐ๋ : ํจ์ ์ข ์์ฑ์ ์ด์ฉํด์ ๋ฆด๋ ์ด์ ์ ์ฐ๊ด์ฑ์ด ์๋ ์์ฑ์ผ๋ก๋ง ๊ตฌ์ฑ (๋ถํด = ์ฌ๋ฐ๋ฅธ ๋ฆด๋ ์ด์ ์ผ๋ก ๋ง๋ค์ด๊ฐ๋ ๊ณผ์ )
- ์ฃผ์์ฌํญ : ๋ฌด์์ค ๋ถํด๋์ด์ผํจ. (๋๋ฑํ ๋ฆด๋ ์ด์ ์ผ๋ก ๋ถํด (์ ๋ณด์์คx) , ์์ฐ์กฐ์ธ์ ์ ์ผ๋ก ๋ณต์ ๊ฐ๋ฅํด์ผํจ
- ์ด์ ํ์์ ์ ๊ฑฐํ๋ฉด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ค๊ณ
- ๋ฆด๋ ์ด์ ์ ๋ถํดํ๋ ๊ณผ์
- ์ด์ ํ์์ด ๋ฐ์ํ์ง ์๋๋ก, ๋ฆด๋ ์ด์ ๊ณผ ๊ด๋ จ์๋ ์์ฑ๋ค๋ก๋ง ๊ตฌ์ฑํ๊ธฐ์ํด
- ํจ์์ ์ข ์์ฑ์ ํ๋จํ์ฌ ์ ๊ทํ๋ฅผ ์ํํ๋ค.
โถ ์ ๊ทํ NF
- ๋ฆด๋ ์ด์ ์ด ์ ๊ทํ๋ ์ ๋ (ํน์ฑ ๊ณ ๋ คํด์ ์ ํฉํ ์ ๊ทํ ์ ํ)
- ์ ๊ทํ๋ง๋ค ์ ์ฝ์กฐ๊ฑด ์กด์ฌํจ (์ฐจ์ ๋์์ง์๋ก ์๊ฒฉํด์ง)
โถ ์ 1 ์ ๊ทํ :: 1NF
- ๋ฆด๋ ์ด์ ์ ๋ชจ๋ ์์ฑ์ด ๋๋ ๋ถํด๋์ง ์๋ ์์ ๊ฐ๋ง ๊ฐ์ง๋ฉด ๋ง์กฑ
- ๊ด๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฆด๋ ์ด์ ์ด ๋๊ธฐ ์ํ ์กฐ๊ฑด
- BUT ) 1์ ๊ทํ์ ๋ง์กฑํ์ง๋ง ๋ฐ์ดํฐ ์ค๋ณต์ผ๋ก ์ธํด ์ด์ํ์ ๋ฐ์ํจ
- ๊ฒฐ๊ณผ : ๋ถ๋ถ ํจ์ ์ข ์์ด ์ ๊ฑฐ๋๋๋ก ์ด๋ฒคํธ ์ฐธ์ฌ ๋ฆด๋ ์ด์ ๋ถํด
โถ ์ 2 ์ ๊ทํ :: 2NF
- 1์ ๊ทํ์ ์ํ๊ณ ๊ธฐ๋ณธํค๊ฐ ์๋ ๋ชจ๋ ์์ฑ์ด ๊ธฐ๋ณธํค์ ์์ ํจ์ ์ข ์ ๋๋ฉด ๋ง์กฑ
- ์ดํ์ ํจ์ ์ข ์ transitive FD
- ๊ฒฐ๊ณผ : ์ดํ์ ํจ์ ์ข ์์ด ์ ๊ฑฐ๋๋๋ก ๋ฆด๋ ์ด์ ๋ถํด
โถ ์ 3 ์ ๊ทํ :: 3NF
- 2์ ๊ทํ์ ์ํ๊ณ ์ดํ์ ํจ์ ์ข ์์ด ๋์ง ์์ผ๋ฉด ๋ง์กฑ
- ๊ฒฐ๊ณผ : ์ดํ์ ํจ์ ์ข ์์ด ๋์ง ์๋๋ก ๋ถํดํด์ผํ๋ค.
โถ ์ ๊ทํ์ ์ฃผ์ ์ฌํญ
5 ์ ๊ทํ์ ์ํด์ผ๋ง ๋ฐ๋์งํ ๊ฒ์ ์๋๋ฉฐ ์ผ๋ฐ์ ์ผ๋ก๋ 3์ ๊ทํ or ๋ณด์ด์ค/์ฝ๋ ์ ๊ทํ์ ์ํ๋๋ก ๋ถํดํจ (๋ฐ์ดํฐ ์ค๋ณต ์ค์ ,์ด์ํ์ ํด๊ฒฐ)
โถ ์ ๊ทํ ๊ณผ์
10์ฅ ํ๋ณต๊ณผ ๋ณํ ์ ์ด
โถ ํธ๋์ญ์
- ํ๋์ ์์ ์ ์ํํ๋๋ฐ ํ์ํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ์ฐ์ฐ๋ค์ ๋ชจ์๋๊ฒ
- SQL ๋ฌธ๋ค์ ๋ชจ์ (INSERT,DELETE,UPDATE)
- ๋ ผ๋ฆฌ์ ์ธ ์์ ์ ๋จ์
- ์ฅ์ ๋ฐ์ ⇒ ๋ณต๊ตฌ์์ &๋ณํ์ ์ด์์ ์ ์ํ ์ค์ํ ๋จ์
- DB์ ๋ฌด๊ฒฐ์ฑ&์ผ๊ด์ฑ ๋ณด์ฅ์ ์ํด ⇒ ์์ ์ํ์ ์ฐ์ด๋ ์ฐ์ฐ๋ค์ ํ๋์ ํธ๋์ญ์ ์ผ๋ก ์ ์ ๊ด๋ฆฌํด์ผํจ
โถ ํธ๋์ญ์ ํน์ฑ
- ์์์ฑ → ํ๋ณต๊ธฐ๋ฅ
- ์ผ๊ด์ฑ→ ๋ณํ์ ์ด๊ธฐ๋ฅ
- ๊ฒฉ๋ฆฌ์ฑ→ ๋ณํ์ ์ด๊ธฐ๋ฅ
- ์ง์์ฑ → ํ๋ณต๊ธฐ๋ฅ
- ์ฅ์ ์ ํ๋ณต
์ฅ์ : ์์คํ ์ด ์ ๋๋ก ๋์ํ์ง ์๋ ์ํ
- DB ์ ์ฅํ๋ ์ ์ฅ์ฅ์น ์ข ๋ฅ
- ํธ๋ ์ญ์ ์ํ์ ์ํ ๋ฐ์ดํฐ ์ด๋ ์ฐ์ฐ
- ํ๋ณต(recovery) ์ฅ์ ๊ฐ ๋ฐ์ํ์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฅ์ ๊ฐ ๋ฐ์ํ๊ธฐ ์ ์ ์ผ๊ด๋ ์ํ๋ก ๋ณต๊ตฌ์ํค๋ ๊ฒ ํธ๋์ญ์ ์ ํน์ฑ์ ๋ณด์ฅํ๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ผ๊ด๋ ์ํ๋ก ์ ์งํ๊ธฐ ์ํด ํ์์ ์ธ ๊ธฐ๋ฅ
- ํ๋ณต ๊ด๋ฆฌ์(recovery manager)๊ฐ ๋ด๋น ์ฅ์ ๋ฐ์์ ํ์งํ๊ณ , ์ฅ์ ๊ฐ ํ์ง๋๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณต๊ตฌ ๊ธฐ๋ฅ์ ์ ๊ณต
- ๋ณํ ์ํ, ๋ณํ์ ์ด
11์ฅ ๋ณด์๊ณผ ๊ถํ ๊ด๋ฆฌ
โถ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณด์ ๋ชฉํ
- ์กฐ์ง์์ ํ๊ฐํ ์ฌ์ฉ์๋ง ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ์ ๊ทผํ ์ ์๋๋ก ํต์ ํ์ฌ ๋ณด์์ ์ ์งํ๋ ๊ฒ
โถ๊ถํ ๊ด๋ฆฌ๋ฅผ ํตํ ๋ณด์
โถ๊ฐ์ฒด ๊ถํ
- GRANT (๊ถํ ๋ถ์ฌ)
- REVOKE (๊ถํ ์ทจ์)
โถ์ญํ (๊ถํ ๋ฐ๊ตฌ๋)
- ์ฌ๋ฌ ๊ถํ์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ด ๋์ ๊ฒ
โถ์ญํ ์ ํ์์ฑ
- CREATE ROLE (์ญํ ์์ฑ)
2.GRANT ( ์ญํ ์ ๊ถํ์ถ๊ฐ / ์ญํ ๋ถ์ฌ)
3.REVOKE (์ญํ ์ทจ์)
4. DROP ROLE (์ญํ ์ ๊ฑฐ)