본문 바로가기

유틸리티/ORACLE DB

[Oracle] Oracle DB 유저 생성 및 권한 부여

 오라클 CLI 를 통해 DB 유저를 생성 및 삭제, 권한 부여 등 DDL 및 DCL 처리를 위한 문서입니다. 

 기본적으로 오라클을 설치하게 되면 SYSTEM 이라는 관리자만 하나 생성이 되는데요. 이러한 관리자를 통해 서버를 관리하는 것 보다 필요한 서비스 마다의 유저를 생성하여서 유저들마다 특정 테이블 혹은 데이터베이스에 권한을 부여하여 처리하는 것이 보다 바람직하다 판단됩니다.

 

 그러면 본격적으로 내용에 들어가보도록 합시다.

 

 

# Contents


  • Oracle 접속
  • 유저 생성
  • 유저 권한 부여
  • 유저 권한 삭제
  • 유저 삭제
  • 데이터베이스 반영

 

# Oracle 접속


먼저 CMD 명령 프롬프트를 시작해주세요. 그리고 아래와 같은 명령어를 입력해주세요.

 

sqlplus

 

다음과 같은 결과가 나오게 됩니다.

 

 

 

시스템데이터베이스 관리자로 접근하기 위하여 아래와 같은 명령어를 입력해주세요.

 

conn/as sysdba

 

다음과 같은 결과가 나오게 됩니다.

 

 

 

 

# 유저 생성


 sqlplus 접속이 완료되었으면 유저를 생성해보도록 합시다. 오라클에서 유저를 생성하기 위한 포맷은 아래와 같습니다.

create user c##{identify} identified by {password};

# my code
# create user c##root identified by root; 
# end

 

다음과 같은 결과가 나오게 됩니다.

 

 

 

오라클 12c 로 넘어오면서 부터 공통사용자는 유저 이름명 앞에 c##을 넣어주어야 가능하다고 합니다.

 

 

# 유저 권한 부여


 유저에게 권한을 부여하고 싶다면 권한 부여하기 위한 포맷 형태는 아래와 같습니다.

grant {권한} to {identified};
# exam : grant connect, resource, dba to {identified};

# my code 
# grant connect, resource, dba to c##root;
# end

 

다음과 같은 결과가 나오게 됩니다.

 

 

 

 

# 유저 권한 삭제


 유저에게 권한을 삭제하고 싶다면 권한 부여하기 위한 포맷 형태는 아래와 같습니다.

revoke {권한} from {identified};
# exam : revoke connect, resource, dba from {identified};

# my code 
# revoke connect, resource, dba from c##root;
# end

 

다음과 같은 결과가 나오게 됩니다.

 

 

 

 

# 유저 삭제


 유저에게 권한을 삭제하고 싶다면 권한 부여하기 위한 포맷 형태는 아래와 같습니다.

drop user {identified} cascade;

# my code 
# drop user c##root cascade;
# end

 

다음과 같은 결과가 나오게 됩니다.

 

 

 

 

# 데이터베이스 반영


 수정된 데이터베이스를 반영하기 위해 다음 포맷을 사용합니다. 해당 명령어는 지금까지 데이터베이스의 변경 사항들을 적용하기 위하여 사용됩니다. 

commit;