본문 바로가기

전체 글115

데이터 베이스_ 오라클 [Delete, Truncate, Drop] 데이터 삭제 및 복구 데이터를 살제할때 -> drop문 -> drop table 삭제시킬 테이블명 -> DDL문 -> 테이블이 삭제(그 내용도 삭제) delete 와 truncate의 차이점 및 공통점은 아래와 같다. 차이점 _ delete from 테이블은 rollback이 된다. truncate table 삭제시킬 테이블명은 rollback이 안된다. 해당 구문은 -> DDL 문이기에 롤백이 안된다. 그리고 오라클의 10g 이후부터 flashback 기술 => 항상 복원이 안된다. (휴지통에 임시 저장) -> 휴지통에서 꺼내오기 공통점 _ 일반적인 상황에선 delete from 테이블명; // 해당 구문은 테이블의 모든 데이터를 삭제 하는것이다. 그리고 truncate table 삭제시킬 테이블명; // 해당 구문 또한 .. 2019. 7. 5.
데이터 베이스_ 오라클 [객체 권한] 개요 및 활용 오라클의 객체 권한은 테이블, 뷰, 시컨스, 시노님 ,,, 즉 계정(소유자) 우선 권한이다. 권한의 부여 및 회수 또한 계정(소유자)의 몫이다. 객체의 권한 종류를 조회할 수 있는 SQL 은? 시스템권한 -> system_privilege_map 객체 권한 -> table_privilege_map 시스템 계정으로 로그인하여 해당 계정의 객체 권한을 조회해 보자. SQL> select * from table_privilege_map; PRIVILEGE NAME ---------- ---------------------------------------- 0 ALTER 1 AUDIT 2 COMMENT => 주석을 달때 사용(모델링) 3 DELETE => 삭제 권한 4 GRANT => 권한 부여 5 INDEX .. 2019. 7. 4.
데이터 베이스_ 오라클 [Role] 삭제 및 권한위임 문제_ 만약 관리자가 usercreate 롤을 생성하고, scott,test에게 권한을 부여한뒤 다시 usercreate 롤을 삭제 한다면, 이미 그 롤을 부여받은 scott, test는 해당 권한을 사용할수있을까? 직접 해보면 알것이다. 롤을 만들고 지울수있는 계정은 시스템 계정이다. 먼저 시스템 계정에 로그인을 한뒤 create의 반대인 drop 구문을 작성하여 선언하면 된다. 형식_ drop role 삭제시킬 롤명 SQL> conn sys/sys12345 as sysdba 연결되었습니다. SQL> drop role usercreate; 롤이 삭제되었습니다. 롤은 삭제가 되었고, 우리가 확인하고싶은 계정으로 로그인하여 부여받은 권한이 무효가 되었는지 다시 확인해보자. SQL> conn scott/ti.. 2019. 7. 4.
데이터 베이스_ 오라클 [Role] 생성 및 권한 부여 관리자 권한으로 로그인을 할 수있는 usercreate 롤을 생성 한후 scott 과 test 계정에게 부여하려한다면? 형식 _ create role 생성시킬 롤이름; 실행 결과_ SQL> create role usercreate; 롤이 생성되었습니다. 롤을 생성을 하게되면 최하단에 생성이 되는것을 볼수가 있다. 그리고 예제_ 우리는 만들어진 롤에 권한을 넣어준뒤 특정계정(scott, test)에게 권한을 부여한다. 즉 롤을 이용하여 권한을 부여 해보자는 것이다. 형식_ grant 권한종류,,,, to 롤명1, 롤명2,,, => 롤에게 권한을 넣어주는 명령어. 우선 usercreate롤에 유저생성,유저수정 권한을 넣어주었다. 삭제권한은 다소 위험한 부분이기에 별도로 부여하지않았다. SQL> grant c.. 2019. 7. 4.
데이터 베이스_ 오라클 [Role] 개요 및 확인 오라클에서 권한을 부여할때 롤을 사용할때도 있고 사용하지 않는 경우도 있다. 쉽게 말해서 롤은 권한을 담고있는 폴더라고 생각하면된다. 즉 권한을 담을수있는 그릇, 쟁반과도 같은 의미이다. 리눅스 -> 그룹과 비슷하다 (단순, 반복적인 권한은 롤을 만들어 사용한다.) 편리하게 권한을 부여하기 위해 만들어진것이다. 사용 목적으로는 롤을 이용하여 한꺼번에 많은 권한을 편리하게 부여하기 위해서 만든 것이다. 형식_ ex) grant create table, create sequence,,,,to 롤이름 dba_roles -> 권한 -> 시스템 계정으로만 사용가능 dba_XXX, sys_XXX, v$_XXXX로 시작하는 테이블은 관리자만 볼수있는 테이블종류이다. 문제_ 시스템에서 현재 사용중인 롤을 조회하는 SQ.. 2019. 7. 4.
데이터 베이스_ 오라클 [사용자 권한 제어] 계정 삭제 사용자 계정을 삭제하는 방법에 대해 알아보자. 1. drop user 삭제시킬 유저명 => 아무런 작업을 하지 않은 유저에게 사용하는 명령어. 2. drop user 삭제시킬 유저명 [cascade] => 테이블, 뷰, 시컨스 등을 작업했다면, 유저와 해당 유저가 만들었던 모든 데이터또한 같이 삭제하겠다 라는 명령어. 즉 계정뿐만 아니라 이 계정으로 작업한 내용까지 다 삭제하라. 하지만 계정삭제는 아무래도 작업내역과도 연관이 깊기때문에 보통은 락 옵션을 달아주는 것을 주로 사용한다. 실행결과_ SQL> drop user hong; 사용자가 삭제되었습니다. 2019. 7. 4.