트랜잭션이란 : sql을 실행하여 데이터베이스를 변경 추가 삭제 하는 작업의 논리적 단위
오라클 rdbms 는 일정 시간을 두고 명시적으로 commit 또는 rollback 명령어를 실행하지 않을 경우 일정시간마다 실제 데이터 베이스의 데이터를 트랜잭션 인스턴스에 가져와 사용자의 sql 명령어를 트랜잭션 인스턴스에서 실행하게 된다. 설정된 commit 시간이 되면
실제 데이터에 변경된 데이터를 반영하고 트랜젹센 인스턴를 초기화하고 데이터를 새로 가져오게 된다.
이때, commit 문과 rollback 명령어를 이용하여 트랜잭션 인스턴스에서 실행된 sql 결과를
실제 디비에 반영하거나 트랜잭션 인스턴스에 sql 결과를 되돌리는 등으 제어를 할수 있다.
commit : 트랜잭션 인스턴스 초기화 시점부터 현재까지 실행된 sql 결과를 실제 데이터 베이스에 반영하고 다시 트랜잭션 인스턴스를 초기화 한다.
rollback : 트랜잭션 인스턴스를 초기화 한다.(데이터복구)
rollback 문은 savepoint 로 sql 지점으로 부분 복구가 가능하다.
sql
..
..
..
1번구간
savepoint p1;
sql
..
...
..
..
rollback to p1;
위 sql 문을 예로 들면 트랜잭션 인스턴스의 데이터는 1번구간으로 시점 데이터로 복원된다.
sqlPlus 나 sqlDeveloper 사용시 정산 종료 하면 자동으로 commit 하여 데이터를 보관하지만 정전이나 기타 오류로 인해 비정상적으로 프로그램이 종료될시 인스턴스가 초기화된 시점 즉, 마지막 commit 구간으로 데이터가 rollback 된다.
피드 구독하기:
댓글 (Atom)
[oracle]백업및 복구
[oracle]백업및 복구 오라클 덤프 백업및 복구 윈도우 서버 기반 간단 정리 --디렉터리 조회 sqlplus 또는 dbtool 입력시작 SELECT * FROM DBA_DIRECTORIES ; --D:...
-
수십대의 서버에 특정 쉘을 실행한다거나 파일을 수정해야할경우 호스트 입력 아이디 입력 패스워드 입력은 여간 짜증나는일이 아닐수 없다. 이를 한방에 해주는 방법 teraterm 를 설치한다( putty 는 버리자 ) 예를 들면 19...
-
pom.xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId...
-
notice_state 란 이름의 체크박스가 있다 가정하고 $("input[name=notice_state]").bind("click",false); 끝.
댓글 없음:
댓글 쓰기