๐Ÿ–ฅ๏ธ ๋ฐ์ดํ„ฐ ์ œ์–ด์–ด(DCL)(2023-01-30)

๋ฆฌ์•ˆ๐Ÿคยท2023๋…„ 1์›” 30์ผ

<SQL๊ตฌ๋ฌธ ์œ ํ˜•>
1. DQL(๋ฐ์ดํ„ฐ์งˆ์˜์–ด) : select
2. DML(๋ฐ์ดํ„ฐ์กฐ์ž‘์–ด) : insert, update, delete
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย => commit, rollback ๊ฒฐ์ •ํ•ด์•ผํ•จ.
3. DDL(๋ฐ์˜ํ„ฐ์ •์˜์–ด) : create, alter, drop, truncate
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย => autocommit ๋‚ดํฌํ•จ
4. DCL(๋ฐ์ดํ„ฐ์ œ์–ด์–ด) : grant, revoke
ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย => autocommit ๋‚ดํฌํ•จ

1. User ์ƒ์„ฑ

  • create user ๊ถŒํ•œ ์†Œ์œ ์ž๊ฐ€ DB์— User๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Œ

- test user ๋งŒ๋“ค๊ธฐ(sys์œ ์ €์—์„œ ์ž‘์„ฑ)

=> DB์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ ๋ถ€์กฑ, ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ด ์ค˜์•ผ ํ•œ๋‹ค!!

2. ๊ถŒํ•œ ์œ ํ˜•

3. System ๊ถŒํ•œ

- DB๋ฅผ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ, System ๊ถŒํ•œ์˜ ์ข…๋ฅ˜๊ฐ€ 100๊ฐœ ์ •๋„ ๋จ.
- ๋ชจ๋“  System ๊ถŒํ•œ์€ DBA๊ฐ€ ์†Œ์œ ํ•จ

1) System ๊ถŒํ•œ ๋ถ€์—ฌ


-> grant ~ to = ๊ถŒํ•œ ๋ถ€์—ฌํ•˜๋Š” ๋ฌธ๋ฒ•

-> test ์œ ์ €์— connect ๊ฐ€๋Šฅ & table ์ƒ์„ฑ๊ฐ€๋Šฅ / view๊ถŒํ•œ์€ ์ฃผ์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ฅ˜๋ฐœ์ƒ

-> create table์€ table๊ณผ index๋ฅผ ์ƒ์„ฑ/์šด์˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด๊ธฐ ๋•Œ๋ฌธ์— index์ƒ์„ฑ ๊ฐ€๋Šฅ!!

-> ๋น„๋ฐ€๋ฒˆํ˜ธ๋ณ€๊ฒฝ

2) System ๊ถŒํ•œ ํšŒ์ˆ˜

-> revoke ~ from : ๊ถŒํ•œ ํšŒ์ˆ˜ํ•˜๋Š” ๋ฌธ๋ฒ•

-> ๊ถŒํ•œ์ด ํšŒ์ˆ˜๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ƒˆ๋กœ์šด table ์ƒ์„ฑ๋ถˆ๊ฐ€!!

4. Object ๊ถŒํ•œ

- Object๋ฅผ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ, Object ๊ถŒํ•œ์˜ ์ข…๋ฅ˜ ๋‹ค์–‘ํ•จ.
ex) hr.employees -> select, insert, update, delete
- ๋ชจ๋“  Object ๊ถŒํ•œ์€ Object์˜ ์ฃผ์ธ์ด ์†Œ์œ ํ•จ.

1) Object ๊ถŒํ•œ ๋ถ€์—ฌ

2) Object ๊ถŒํ•œ ํšŒ์ˆ˜

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