관리자 계정만 가능.(관리자 권한을 부여받은 계정도 가능)
-c##이 붙지 않은 계정을 사용.(_ORACLE_SCRIPT 활성화)
grant 권한,,,,to 계정명;
-revoke : 권한 회수
revoke 권한,,,from 계정명;
테이블 스페이스에 대한 사용권한 부여
alter user 계정명 default tablespace users quota unlimited on users;
사용
계정삭제
-객체가 없는 계정
drop user 계정명;
-객체가 있는 계정
drop user 계정명 cascade
-모든 계정은 계정이 가진 객체를 백업할 수 있다.
-exp.exe 사용
-dos에서 사용.
-백업은 정기백업 & 비정기 백업을 수행.
-테이블만 백업
exp userid = 계정명/비번 tables=백업할 테이블명,,,, file = 백업파일의 파일명
-모든객체 백업
exp userid = 계정명/비번 full=y file=백업 파일의 파일명
-imp.exe복원
-백업파일을 사용하여 DBMS에서 사용할 객체를 복원하는 것.
-같은 이름의 객체가 존재하면 복원되지 않는다.
imp -help
-특정 테이블만 복원
imp userid=계정명/비번 tables=복원할 테이블명,,, file=백업파일의 경로
-모든 객체 복원
imp userid=계정명/비번 full=y file=백업파일의 경로
테이블 명을 원래의 이름과 함께 다양한 이름으로 사용해야 할 때.
alias와는 다르다.( alias는 해당 select에서만 alias명으로만 사용가능. )
create synonym권한이 부여된 계정만 synonym을 생성할 수 있다.
-user_sysnonyms DD에서 생성된 synonym을 확인할 수 있다.
-public synonym을 생성하면 다른 계정에서도 synonym을 사용할 수 있다.
생성
create [public] synonym 시노님명 for 테이블명;
사용
select 컬럼명,,,,from 시노님명;
insert into 시노님명(컬럼명,,,) values(,,,);
삭제
drop synonym 시노님명;
권한부여(관리자)
grant create [public] synonym to 계정명;
권한회수(관리자)
revoke create [public] synonym from 계정명;
실제 테이블에서 도출되는 가상의 테이블.
보안성향상, 사용자편의성이 향상.
-자주 사용되는 조건으로 view를 만들고 접근
-조인을 한 상태로 view를 만들고 접근
create view 권한이 있는 사용자만 생성 가능.
단순 view와 복합 view 두 가지로 생성 가능.
단순 view
-테이블 하나에서 도출된 view
-함수, 연산식을 사용하지 않고 생성한 view
-DML 사용 가능
복합 view
-테이블 여러개에서 도출된 view
-함수, 연산식을 사용하여 생성한 view
-DML 사용 불가능.(select 가능. insert 불가능. update, delete 상황에 따라 다름.)
권한부여 - 관리자
grant create view to 계정명;
권한회수 - 관리자
revoke create view from 계정명;
* 생성
create view 뷰명(컬럼명,,,생략가능) as (select 컬럼명,,,,) option;
* 삭제
drop view 뷰명;
-user_views DD에서 view를 확인할 수 있다.
레코드의 양이 많을 때 빠른 검색을 하기 위해 제공하는 객체(CPU Cost와 IO Cost가 줄어든다.)
자동 인덱스와 수동인덱스 두가지를 제공.
모든 계정은 인덱스를 생성하고, 사용할 수 있다.
user_indexes DD에서 index를 확인할 수 있다.
인덱스는 시간이 지날 수록 테이블의 레코드와 차이가 생긴다.(rebuild 해야 함.)
모든 레코드는 레코드를 식별하기 위한 주소(rowid)를 가진다.
* 인덱스 생성
create [인덱스 종류] index 인덱스명 on 테이블명( 컬럼명,,, );
* 인덱스 삭제
drop index 인덱스명;
* 인덱스 rebuild
alter index 인덱스명 rebuild;
