데이터베이스

초보자를 위한 Oracle 사용자 생성 및 권한 설정 방법

CodeCaine Explorer 2024. 12. 19. 14:52
728x90
반응형
SMALL

안녕하세요! 😊 오늘은 Oracle 데이터베이스에서 사용자 계정 관리 및 권한 부여 방법에 대해 함께 알아볼 거예요. Oracle DB를 사용하면서 사용자 계정을 만들고, 필요한 권한을 설정하는 일은 아주 중요한 부분이에요. 처음 접하는 분들도 쉽게 따라할 수 있도록 단계별로 설명드릴게요. 포기하지 말고 끝까지 함께 해봐요! 💪


1. Oracle 사용자 계정 생성하기

SQL 명령어로 사용자 계정 생성하기

Oracle DB에서 새로운 사용자 계정을 만들 때는 CREATE USER 명령어를 사용해요. 아래는 간단한 예시입니다:

CREATE USER myuser
IDENTIFIED BY mypassword
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp;

설명

  1. CREATE USER myuser: myuser라는 새로운 사용자 계정을 만듭니다.
  2. IDENTIFIED BY mypassword: mypassword를 계정의 비밀번호로 설정합니다.
  3. DEFAULT TABLESPACE users: 기본 테이블스페이스를 users로 지정합니다.
  4. TEMPORARY TABLESPACE temp: 임시 테이블스페이스를 temp로 지정합니다.

📌 테이블스페이스란?
Oracle DB에서 데이터를 저장하는 논리적 저장소예요. 기본 테이블스페이스는 사용자의 데이터가 저장되는 공간, 임시 테이블스페이스는 작업 중 생성되는 임시 데이터가 저장되는 공간입니다.


2. 사용자에게 권한 부여하기

Oracle에서 생성된 사용자는 기본적으로 아무런 권한이 없어요. 권한을 부여하려면 GRANT 명령어를 사용합니다.

시스템 권한 부여

시스템 권한은 데이터베이스 작업을 수행하기 위해 필요한 권한이에요.

GRANT CREATE SESSION TO myuser;
  • CREATE SESSION: 사용자가 데이터베이스에 접속할 수 있는 권한을 부여합니다.

객체 권한 부여

객체 권한은 특정 테이블, 뷰, 프로시저 등에 대해 작업할 수 있는 권한이에요.

GRANT SELECT, INSERT ON employees TO myuser;
  • SELECT, INSERT ON employees: employees 테이블에 대해 SELECT(조회)와 INSERT(삽입) 권한을 부여합니다.

3. 역할(Role) 사용하기

역할은 여러 권한을 묶어서 사용자에게 한 번에 부여할 수 있는 기능이에요.

역할 생성

CREATE ROLE manager_role;

역할에 권한 추가

GRANT CREATE TABLE, CREATE VIEW TO manager_role;

사용자에게 역할 부여

GRANT manager_role TO myuser;

이렇게 하면 manager_role에 포함된 권한을 myuser가 사용할 수 있어요.


4. 사용자 계정 잠금 및 해제

Oracle에서는 보안 목적으로 계정을 잠글 수도 있고, 필요시 다시 해제할 수도 있어요.

계정 잠금

ALTER USER myuser ACCOUNT LOCK;

계정 잠금 해제

ALTER USER myuser ACCOUNT UNLOCK;

5. 사용자 계정 삭제

사용자가 더 이상 필요하지 않을 경우, 계정을 삭제할 수 있어요.

DROP USER myuser CASCADE;
  • CASCADE: 사용자의 모든 데이터와 객체를 함께 삭제합니다.

정리

  1. 사용자 계정 생성: CREATE USER
  2. 시스템 권한 부여: GRANT CREATE SESSION
  3. 객체 권한 부여: GRANT SELECT ON table_name
  4. 역할(Role) 사용: CREATE ROLE, GRANT role TO user
  5. 계정 잠금 및 해제: ALTER USER ... LOCK/UNLOCK
  6. 계정 삭제: DROP USER ... CASCADE

2024.12.19 - [데이터베이스] - SQL DML, DDL, DCL, TCL: 한눈에 보는 초보 개발자를 위한 가이드

 

SQL DML, DDL, DCL, TCL: 한눈에 보는 초보 개발자를 위한 가이드

안녕하세요! 😊SQL을 배우는 초보 개발자분들에게 정말 중요한 개념 중 하나가 바로 DML, DDL, DCL, TCL입니다. 이 네 가지는 데이터베이스 작업을 분류하는 데 사용되며, 각각의 목적과 사용하는 예

alswnsghd1234.tistory.com

 

반응형
SMALL