Summary - 데이터베이스 사용자 계정, QUERY 연습

CODEDRAGON Development/Database

반응형



 

데이터베이스 사용자 계정

데이터베이스 사용자 계정 생성, 사용자 권한 설정, 데이터베이스 사용자 계정의 종류

 

·         테이블스페이스 생성은 테이블, 인덱스, 등의 객체를 저장할 있는 하나 이상의 물리적 데이터 파일로 구성되며, DDL 사용하여 생성한다.

·         데이터베이스의 모든 테이블, 인덱스, 등과 같은 객체의 사용자는 기본적으로 시스템에서 생성되며, 데이터베이스관리자는 추가적으로 사용자 계정을 DDL 통하여 생성할 있다.

·         특정 유형의 SQL문을 실행할 있는 권리나 다른 사용자의 객체를 사용할 있는 권리를 권한 (privilege)이라 하며, 이를 시스템 권한과 객체 권한이라고 한다.

·         데이터베이스의 사용자 계정 권한들을 시스템적으로 설정하기 앞서 데이터베이스관리자는 데이터베이스 객체에 대한 사용자 계정과 권한들에 대한 조사를 통해 명세서를 명확히 작성하여 이를기준으로 관리할 있도록 해야 한다.

http://codedragon.tistory.com/4292

http://codedragon.tistory.com/4328

http://codedragon.tistory.com/4377

 

 

 

 

 

QUERY 연습 1

1) 테이블스페이스의 용량을 확인하는 쿼리문을 작성하시오

SELECT * FROM dba_data_files;

또는

SELECT 테이블스페이스관련정보컬럼리스트.... FROM dba_data_files;

 

 

 

2) 테이블스페이스를 생성하는 쿼리문 작성하시오

CREATE TABLESPACE udata1

DATAFILE '/u02/app/oracle/oradata/orcl/udata1a.dbf'

SIZE 11256K

AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED

UNIFORM SIZE 1M ;

 

AUTOEXTEND 으로 테이블 스페이스 자동 설정(생성한 데이터파일이 채워졌을 경우 자동으로 데이터 파일을 확장하는 방법)

 

 

Extent

·         Extent Segment 할당된 연속적인 블록으로 Database Storage 할당의 논리적인 단위 입니다.

·         Segment Data 넣기 위해 적어도 하나 이상의 Extent 생성되어야 합니다.

 

UNIFORM

·         테이블스페이스가 동일한 크기의 익스텐트로 구성되도록 지정합니다. 크기는 기본적으로 바이트 단위로 지정

·         익스텐트 크기를 KB 또는 MB 단위로 지정하기 위해서는 K 또는 M 사용하여 지정 합니다

·         옵션을 사용하게 되면, DEFAULT Storage 절을 사용할 없습니다.

 

 

 

 

 

QUERY 연습 2

사용자 계정을 생성하여 권한을 부여하고 회수하는 쿼리문 예시입니다.

 

. 사용자 계정을 만들기.

( 테이블스페이스는 이미 만들어져 있다고 가정)

계정명

계정명: sampleuser

패스워드: sample12#$

default 테이블스페이스

디폴트 테이블스페이스명: test_tbs

temporary 테이블스페이스명: imsi_test_tbs

테이블스페이스 사용량

50MB

(System sysaux 테이블스페이스는 사용할 없다)

 

 

CREATE USER sampleuser IDENTIFIED BY "sample12#$"

DEFAULT TABLESPACE test_tbs

TEMPORARY TABLESPACE imsi_test_tbs

QUOTA 0 ON system

QUOTA 0 ON sysaux

QUOTA 50MB ON test_tbs;

 

 

 

. 사용자 권한 주기

.에서 생성한 사용자에 대하여 connect, resource, dba권한 부여

GRANT connect, resource, dba TO "sampleuser";

 

 

 

. 사용자 권한 회수

나항에 부여된 권한 dba권한 회수

REVOKE dba FROM sampleuser;

 

 

 

. 사용자 정보 보기

데이터 딕셔너리를 이용한 사용자 정보 보기 쿼리문 작성

 

SELECT * FROM all_users;