Skip to the content.

User

조회

--User
SELECT * FROM ALL_USERS;

--DBA
SELECT * FROM DBA_USERS;


생성

CREATE USER user_name IDENTIFIED BY password;


비밀번호 변경

ALTER USER user_name IDENTIFIED BY password;


권한

GRANT CONNECT, RESOURCE TO user_name;

--프로시저 실행 권한
GRANT EXECUTE ON procedure_name TO user_name;

--DBA 권한
GRANT DBA TO user_name;

--SYSDBA 권한
GRANT SYSDBA TO user_name;

--테이블 스페이스 권한
GRANT UNLIMITED TABLESPACE TO user_name;

--가지고 있는 시스템 권한 확인
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE = 'user_name';

--가지고 있는 롤 확인 (시스템 권한은 롤에 포함)
SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE = 'user_name';

--가지고 있는 롤에 있는 시스템 권한 확인
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE = 'role_name';


잠금

ALTER USER user_name ACCOUNT LOCK;
ALTER USER user_name ACCOUNT UNLOCK;


비밀번호 만료 명령

ALTER USER user_name PASSWORD EXPIRE;


삭제

DROP USER user_name CASCADE;

CASCADE가 없으면 ORA-01922가 발생함


기본 테이블스페이스 변경

ALTER USER user_name DEFAULT TABLESPACE tablespace_name;


기본 테이블스페이스가 아닌 테이블스페이스에 대한 사용

--size만큼 사용할 수 있도록 함
ALTER USER owner_name QUOTA size ON tablespace_name;

--제한 없음
ALTER USER owner_name QUOTA UNLIMITED ON tablespace_name;


참고