SQL
[Oracle] 유저 관리 - 유저생성, 권한부여, 권한변경, 유저삭제
ㄷㅐ장님
2021. 12. 31. 10:51
DDL(Database Definition Language)
유저 관리
권한(privilege)
: 특정한 sql문을 수행할 수 있는 권리
-시스템 권한 : 데이터베이스에 영향을 줄 수 있는 권한
-객체 권한 : 객체를 사용할 수 있는 권한
-role(롤) : 유저에게 부여할 수 있는 권한을 모아 놓은 객체, 유지관리에 대한 편리성
-sys
select * from user_sys_privs; : 내가 받은 시스템 권한을 확인
select * from user_tab_privs; : 내가 받거나 부여한 객체 권한을 확인
select * from session_roles; : 내가 받은 role을 확인
select * from role_sys_privs; : 내가 받은 role 안에 시스템 권한을 확인
select * from role_tab_privs; : 내가 받은 role 안에 객체 권한을 확인
select * from user_users; : 유저 정보 확인(hr)
-dba
select * from dba_users; : 데이터베이스에 생성된 유저 정보
select * from dba_sys_privs where grantee = ‘유저명’; : 시스템권한을 어떤유저에게 부여했는지 확인
select * from dba_dba_privs where grantee = ‘유저명’; : 객체 권한을 어떤 유저에게 부여했는지 확인
select * from dba_roles; : 데이터베이스에 생성된 롤에 대한 정보 확인
select * form dba_role_privs where grantee = ‘유저명’; : 유저한테 부여한 role에 대한 정보 확인
책 = table(segment)
장 = extent
페이지 = block
문장 = row
유저생성 (in dba)
create user james
identified by james
default tablespace users --테이블 생성시 사용할 수 있는 tablespace
temporary tablespace temp --정렬작업시 메모리에서 다 할 수 없으면 데이터를 임시로 저장하는 공간
quota 10m on users; --tablespace를 사용할 수 있는 권한
select * from dba_users where username='JAMES'; --유저생성 확인
select * from dba_ts_quotas; --10m 확인
권한 변경
alter user james
quota unlimited on users;
권한부여
DCL(Data Control Language)
-grant : 권한 부여 명령어
grant 시스템권한 to 유저명; --권한을 유저에게 부여하는 방법
grant create session to james;
-revoke : 권한 회수 명령어
revoke 시스템 권한 from 유저명; --권한을 유저에게 회수하는 방법
revoke create session from james;
유저삭제
drop user 유저명;
[문제92] 새로운 유저를 생성해주세요.
유저이름 : insa
비밀번호 : oracle
DEFAULT TABLESPACE : users
TEMPORARY TABLESPACE : temp users
TABLESPACE 사용량 : 1M
create user insa
identified by oracle
default tablespace users
temporary tablespace temp
quota 1m on users;
[문제93] insa 유저에서 create session 권한을 부여 해주세요.
grant create session to insa;