1. DBMS 계정의 종류
- 일반 사용자 계정
- sys 계정
최상위 계정으로 system과 같은 계정을 여러개 만들 수 있고 만능 권한을 가진다. (Super user)
SYSDBA권한을 가지진 오라클 시스템의 기반인 data dictionary 소유자이며 DB 생성과 삭제 가능하다. (Oracle 시스템의 총 관리자)
- system 계정
SYS와 유사한 권한을 가지고 있지만, DB 생성과 삭제를 할 수 없다. SYSOPER 권한을 가진다.
2. DBMS 로그인 명령어
> sqlplus [아이디]
> sqlplus [아이디]/[비밀번호]
> sqlplus [아이디]/[비밀번호] as [계정옵션]
- 계정옵션 권한
SYSOPER
데이터베이스를 운영, 관리하기 위한 권한으로 SYSTEM 계정이 가지는 권한. 데이터베이스 자체를 생성 삭제하거나, 다른 유저 소유의 데이터에는 접근할 수 없다.
- 인스턴스와 데이터베이스에 대한 startup, mount, open shutdown, dismount, close 권한 포함
- 데이터베이스 백업, 로그파일을 이용한 복구 등에 대한 database backup, archive log, recover 권한
SYSDBA
SYS 계정이 갖는 권한으로 데이터베이스를 관리하는 최고 권한이다. SYSOPER의 권한을 포함하고 뿐만 아니라 데이터베이스 생성과 삭제, Oracle 시스템에서 모든 권한을 갖는다.
3-1. 대표적인 시스템 권한
create Session : 데이터 베이스를 연결할 수 있는 권한
create table : 테이블을 생성할 수 있는 권한
create sequence : 시퀀스를 생성할 수 있는 권한
create view : 뷰를 생성할 수 있는 권한
create procedure : 함수 프로시저를 생성할 수 있는 권한
create role : 오라클 데이터베이스 역할을 생성할 수 있는 권한
alter user: 생성한 사용자의 정의를 변경할 수 있는 권한
drop user: 생성한 사용자를 삭제시키는 권한
drop any table : 임의의 테이블 삭제할 수 있는 권한
query rewrite : 함수 기본 인덱스를 생성하는 권한
backup any table : 임의의 테이블을 백업할 수 있는 권한
3-2. 롤
여러가지 권한을 묶어놓은 것를 롤이라고 한다. 여러 권한을 롤으로 묶으면 사용자에게 권한을 효율적으로 부여할 수 있다. 시스템에서 제공해주는 롤은 CONNECT 롤, RESOURECE 롤, DBA 롤이 있다.
CONNECT 롤
사용자가 데이터베이스에 접속 하기 위한 기본적인 시스템 권한 8가지
create session, alter session, create cluster, create database link, create sequence, create synonym, create table, create view
RESOURCE 롤
사용자가 객체(테이블, 뷰, 인덱스)를 생성할 수 있는 권한
create cluster, create procedure, create sequence, create table, create trigger
DBA 롤
데이터베이스 객체를 관리하고 사용자들을 작성, 변경, 제거할 수 있도록 하는 모든 권한
시스템 자원을 무제한적으로 사용하며 시스템 관리에 필요한 모든 권한을 부여할 수 있는 강력한 권한을 보유한 롤
4. 사용자 명령어
- 사용자 생성
CREATE USER [아이디] IDENTIFIED BY [비밀번호] ;
- 사용자 계정 목록
SELECT * FROM DBA_USERS ;
SELECT * FROM ALL_USERS ;
- 사용자에게 권한 부여
GRANT [권한1, 권한2...] TO [사용자 아이디] ;
- 사용자에게 부여된 시스템 권한 확인
SELECT GRANTED_ROLE FROM DBA_ROLE_PRIVX
WHERE GRANTEE =사용자명;
- 사용자에게 부여된 롤 확인
SELECT PRIVILEGE FROM DBA_SYS_PRIVS
WHERE GRANTEE =사용자명;
-사용자에게 부여된 롤에 대한 시스템 권한 확인
SELECT PRIVILEGE FROM DBA_SYS_PRIVS
WHERE GRANTEE =롤명;
- 사용자에게 부여한 권한 제거, 회수
REVOKE [권한들] FROM [사용자 아이디] ;
- 사용자 계정 비밀번호 변경
ALTER USER [사용자 아이디] IDENTIFIED BY [비밀번호];
- 사용자 삭제
DROP USER [사용자 아이디] [삭제옵션];
- 현재 로그인 사용자 확인
SHOW USER;
- 계정 잠김(LOCK) 풀기
ALTER USER [LOCK 계정] ACCOUNT UNLOCK;
- 다른 계정으로 접속전환
CONN 사용자 아이디 / 비밀번호;
CONNECT 사용자 아이디 / 비밀번호;
'DBMS > Oracle' 카테고리의 다른 글
문자열 비교 : LIKE , 비교 연산자 = , IN (1) | 2022.05.20 |
---|---|
CHAR, VARCHAR, VARCHAR2 비교 (0) | 2022.05.20 |
테이블스페이스 (TABLESPACE) - 생성, 다중생성, 수정, 삭제, 조회 (0) | 2022.05.19 |
SQL - DDL(create,drop,alter), DML(insert,delete,select,update), DCL(grant,revoke),TCL(commit,rollback,savepoint) (1) | 2022.05.17 |
DB, DBMS - 정의, 특징, 종류, 역사 (0) | 2022.05.17 |