SQL

[sql]오라클 계정생성

라텐느 2024. 9. 5. 09:12

🐲계정(ACCOUNT) 생성 : 본인 이니셜(ex:hgd)/1234
ORACLE 은 DATA(TABLE)를 계정이 관리하는 TABLESPACE 에 저장
∴계정생성은 다른 DB(MSSQL,MYSQL, ...)의 CREATE DATABASE 와 같은 의미를 가진다. 
 -> DATABASE 파일에 보관
아래 코드를 명령 프롬프트나 windows powershell에 차례대로 입력
sqlplus /nolog

conn /as sysdba

alter session SET "_ORACLE_SCRIPT"=true;

create user hgd identified by 1234;

grant CONNECT, RESOURCE to kyj;

alter user hgd default tablespace

users quota unlimited on users;

conn hgd/1234

 

🐲 새로 생성한 계정에서 다른 계정의 테이블에 접근할 수 있는 권한 부여하기

1. 먼저 hr로 로그인한다.
PS C:\Users\kimyujin> SQLPLUS /NOLOG

SQL> CONN hr/1234
연결되었습니다.

2. hr를 다른 계정인 hgd 에서 SELECT 할 수 있는 권한을 부여한다.
SQL> GRANT SELECT ON EMPLOYEES TO hgd;
권한이 부여되었습니다.

3. hgd로 로그인한다.
sqldeveloper 에서 hgd로 로그인한다.

테스트 후 접속



4. KYJ에서 HR계정의 EMPLOYEES를 조회
SELECT*FROM hr.EMPLOYEES; -- 조회성공

⚠️SELECT*FROM HR.DEPARTMENTS;

      => (DEPARTMENTS테이블은 아직 권한부여를 안했기때문에 조회 실패