본문 바로가기

분류 전체보기80

[Oracle]sql*loader data migration [Oracle]sql*loader data migration 외부에 있는 데이터를 오라클 테이블 안으로 넣을때여러가지방법이 있는데요. sql*loader를 이용해서 이관작업을 할 수 있습니다. 데이터를 업로드할때 사용할 파일은 이렇게 있습니다. 1. 컨트롤파일 : 업로드할때 필수로 필요한 파일입니다.2. 텍스트파일 : 컨트롤파일에 데이터를 같이 넣을수 있고 텍스트파일로 외부에 놓을 수도 있습니다.3. 로그파일 : 업로드할 때 로그들을 기록합니다. 필수는 아닙니다.4. 배드파일 2014. 7. 15.
[Oracle]Audit 감시파일 [Oracle]Audit 감시파일 사용자가 무슨작업을 했으며 언제 로그인 로그아웃을 했는지이러한 사항들을 보고싶을때 audit을 이용하면 됩니다. auit을 사용하기전에 파라미터파일을 확인해보겠습니다.저는 initorcl라는 pfile을 만들어서 사용하고 있습니다. 빨간부분은 보시면 audit_file_dest라는 audit이 저장되는 위치와audit_trail이라는 사용여부를 확인하실 수 있습니다.true로 사용할 수 있는 상태로 바꿨습니다. 파라미터정보를 수정했으니 재구동을 했습니다. audit_trail이라는 파라미터를 보시면 true로 되어있죠~ audit을 연결하였습니다. dba_audit_session을 조회해보시면 기록을 보실수 있습니다. 정말 많은 결과가 나왔지만 가장 최근것만 빼봤습니다... 2014. 7. 15.
[Oracle]Profile 오라클 프로파일 [Oracle]Profile 오라클 프로파일 사용자를 만들때 프로파일을 만들어서 적용시켜주면 이에맞는유저가 만들어지는데요. 프로파일에는 사용자가 아무런 반응없이 접속해있을경우접속을 자동으로 해지해주는것, 한 user당 몇개의 세션이 붙을 수 있는지등....다양한 설정값들을 제공합니다. 잘 사용한다면 관리할때 유용하겠죠 DBA_PROFILES를 조회해보면 어떤 프로파일이 있는지 볼 수 있습니다. DBA_USER테이블에는 어떤 유저가 어떤 PROFILE을 사용하고있는지 볼 수 있습니다. 이번에는 프로파일을 만들어 보겠습니다. sessions_per_user는 한 계정당 몇명이 붙을 수 있는지를 나타냅니다.1로 설정했으니 하나의 계정에 한명밖에 접속을 못하겠죠connect_time 10은 10분동안만 작업을 .. 2014. 7. 15.
[Oracle]User 관리(Account lock, expire) [Oracle]User 관리(Account lock, expire) 유저관리에서 꼭 필요한 명령어이죠 expire와 lock,unlock을 알아보겠습니다. 위처럼 EXPIRE을 해주면 사용자는 다시 비밀번호를 설정할 수 있습니다. scott으로 접속했더니 다시 비밀벌호를 설정할 수 있네요~ 이번엔 LOCK을 해보겠습니다. 의심스러운사용자가 있다면 LOCK으로 계정을 잠가버릴수 있겠죠 접속이 안되는것을 볼 수 있습니다. UNLOCK으로 다시 접속이 가능하게 해보겠습니다. 다시 이상없이 접속하는 모습을 볼 수 있습니다. 2014. 7. 15.
[Oracle]Temp tablespace group 임시테이블그룹 [Oracle]Temp tablespace group 임시테이블그룹 Temp테이블도 다른것과 마찬가지로 하나만 있을경우 여러사용자가 붙었을때성능저하 현상이 올 수 있는데요. 그래서 각각 유저마다 하나씩 temp tablespace를할당해주는 것을 권장합니다. 하지만 A유저는 임시테이블을 20% 밖에 사용하지않고B유저는 임시테이블을 많이사용해서 공간이 부족하다면 하나씩 할당하는것도 비효율적이겠죠이럴경우 A와B의 임시테이블을 그룹으로 묶어 같이 사용할 수 있게 할 수 있습니다.이렇게되면 훨씬 효율적이겠죠 먼저 temp01이라는 테이블 스페이스를 group1로 지정해서 만들었습니다. DBA_TABLESPACE_GROUPS를 조회해보시면 확인해 보실 수 있습니다. 이번엔 기존에 있던 TEMP를 GROUP1으로 .. 2014. 7. 15.
[Oracle]User tablepace설정 설계 관리 [Oracle]User tablepace설정 설계 관리 사용자관리 전체문장CREATE USER 유저이름IDENTIFIED BY 비밀번호DEFAULT TABLESPACE 테이블스페이스이름TEMPORARY TABLESPACE 템프테이블스페이스이름QUOTA mb ON 테이블스페이스이름PASSWORD EXPIRE;ACCOUNT (LOCK or UNLOCK)PROFILE (PROFILE or DEFAULT) 테이블을 만들때 테이블 스페이스를 지정하지않으면 default로 유저를 생성할때 지정했던테이플스페이스로 지정이 됩니다. 유저에서 테이블스페이스를 설정해주는것도 좋지만그래도 테이블을 만들때 정확히 테이블스페이스를 명시해주는것을 추천합니다. table space설계 시 주의사항1. striping한다. (분할한다.. 2014. 7. 15.
[Oracle]Flashback 플래시백, Flashback drop [Oracle]Flashback, Flashback drop 플래시백 실수로 중요한 데이터를 변경하고 커밋을 눌러버렸다...이럴때 일시적으로 되돌아갈 수 있는 방법이 바로 플래시백 flashback입니다.일시적으로 돌아가는것이기 때문에 돌아간뒤 데이터를 다른테이블에 저장해놓고돌아와서 실제 테이블에 적용시켜주면 복구를 할 수 있죠 ㅎ주의할점을 플래시백은 4시간정도 뒤 시간으로 돌아갈수 있지 하루정도 지나면 안됩니다. ㅎ 실습을 위해서 empno가 7839인 사원의 sal를 확인해보겠습니다. 20000이네요 돌아가기위해서 현재시간을 확인해보겠습니다. sal을 반값으로 줄여버리고 커밋을 해버렸습니다.이제 7839 사원은 연봉이 반절로 줄었네요 ㅋㅋㅋ 조회해보니 반절로 줄었습니다 ㅜ 플래시백을 사용하기위해선 이.. 2014. 7. 14.
[Oracle]Row chaining, Row migration 로우체이닝 로우마이그레이션 [Oracle]Row chaining, Row migration 로우체이닝 로우마이그레이션 row chaining , row migration 성능에대해 고려하기위해 꼭 알아야될중요한 단어입니다. Row chaining로우 체이닝은 하나의 값이 여러블락에 거쳐 저장될때를 말한다.저장엔문제가없지만 셀렉트할 때 한블럭만 읽어도될걸 여러블락을 읽어야하므로 성능이떨어진다. Row migration최초로 저장된 블락에 프리스페이스가 없어서 새로운블락을 할당받아서 거기로 옮긴뒤수정하는것을 마이그레이션이 일어난다고한다.이러한 현상을 최소화 하기위해서 pct_free, pct_used를 설정해 줘야하는데요 PCT_FREEPCTFREE 10을 주면 데이터를 저장할 때 블락내에 10%공간만큼 비워놓는 것입니다.업데이트가있.. 2014. 7. 14.
[Oracle]UNDO SEGMENT 관리 언두세그먼트 [Oracle]UNDO SEGMENT 관리 언두세그먼트 UNDO SEGMENT는 UPDATE DELETE할 때 변경전 데이터를 저장하는 역할을 합니다.ROLLBACK을 위해서 필수적인 데이터이죠~메모리영역에서는 UNDO BLOCK이있고 FILE부분에 UNDO SEGMENT가 있습니다.UNDO SEGMENT의 종류는 SYSTEM UNDO-SEGMENT와PRIVATE UNDOE-SEGMENT가있습니다. PRIVATE 가 사용자쓰는 세그먼트이고SYSTEM세그먼트는 시스템이 변경될때 서버가 알아서 작업하는곳입니다. 한명의 사용자가 세션에 붙게되면 하나의 언두세그먼트를 할당받습니다.언두세그먼트가 부족해지면 DML문처리가 느려질수있으니 주의해야합니다. UNDOSEGMENT관리는수동관리, 자동관리두가지입니다. 이것은.. 2014. 7. 14.