'Database/Oracle'에 해당되는 글 5건

  1. 2013.03.28 토드(Toad) for Oracle , Export Dataset 오류
  2. 2010.08.06 오라클 top 명령어 정리
  3. 2008.12.09 to_date 함수 활용 2
  4. 2008.05.29 ORACLE 에서의 TRUNC() 함수
  5. 2008.05.14 오라클 함수 DECODE
Database/Oracle2013. 3. 28. 15:31


토드 프로그램을 실행시킨 경우 프로그램을 종료시킨다.


Toad 설정 파일이 있는 경로로 이동한다.


윈도우 7의 경우

C:\Users\<OS_USER>\AppData\Roaming\Quest Software\Toad for Oracle\10.x\User Files


XP의 경우

C:\Documents and Settings\<OS_USER>\Application Data\Quest Software\Toad for Oracle\10.x\User Files



해당 경로내에 아래의 파일들이 존재한다.


ToadActions.dat

ToadActions.log


두개의 파일을 적당한 명칭으로 rename 한다.


ToadActions.dat.backup

ToadActions.log.backup



토드를 재실행한다.



참고한 내용

https://support.quest.com/SolutionDetail.aspx?id=SOL49431



Posted by 햇 님
Database/Oracle2010. 8. 6. 15:16
top 명령 실행시 추가할 수 있는 옵션

    * (top) -d [sec]: 설정된 초단위로 Refresh
    * (top) -c      : command뒤에 인자값 표시

top 명령 실행 후 사용할 수 있는 옵션

    * shift + t     : 실행된 시간이 큰 순서로 정렬
    * shift + m     : 메모리 사용량이 큰 순서로 정렬
    * shift + p     : cpu 사용량이 큰 순서로 정렬
    * k             : Process 종료
          o k 입력 후 종료할 PID를 입력한다
          o signal을 입력하라 표시되면 9를 넣어준다
    * c             : 명령 인자 표시 / 비표시
    * l(소 문자엘)   : uptime line(첫번째 행)을 표시 / 비표시
    * space bar     : Refresh
    * u             : 입력한 유저 소유의 Process만 표시
          o which user: 와 같이 유저를 입력하라 표시될때 User를 입력
          o blank(공백) 입력시 모두 표시
    * shift + b     : 상단의 uptime 및 기타 정보값을 블락선택해 표시
    * f             : 화면에 표시될 프로세스 관련 항목 설정
    * o             : 화면에 표시될 프로세스 관련 항목들의 표시 순서를 변경
          o 변경 할 항목의 값을 대/소문자로 입력하면 항목의 위치가 이동됨

top 명령 실행 후 화면

top - 15:55:22 up 98 days, 14:29,  1 user,  load average: 0.05, 0.04, 0.00
Tasks: 141 total,   1 running, 140 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.2%us,  0.1%sy,  0.0%ni, 99.3%id,  0.4%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   4031448k total,  3306440k used,   725008k free,   263928k buffers
Swap:  8193140k total,     2900k used,  8190240k free,  1588424k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

각 행별 내용

    * top - 15:55:22 up 98 days, 14:29,  1 user,  load average: 0.05, 0.04, 0.00

현 재시간(15:55:22 ), uptime 값(up 98 day), 현재 로그인 된 사용자의 수(1 users), 시스템의 최근 1분, 5분, 15분에 대한 각각의 평균 부하율(load average: 0.03, 0.05, 0.05)
Load average: 작업의 대기시간. 값이 1이 나왔다면 1분 동안 평균 1개 정도의 프로세서가 대기상태에 있다는 것이다.
서버마다 차이가 있긴 하지만 5 정도면 서버가 부하를 받는 다고 생각한다. 과부하는 10 ~ 15이상이면 과부하라고 본다.

    * Tasks: 141 total,   1 running, 140 sleeping,   0 stopped,   0 zombie

전체 실행된 현재 프로세스의 수는 (141 total), 실행중인 프로세스 ( 1 running), 유휴상태의 프로세스(140 sleeping),
정지 된 프로세스( 0 stopped), 좀비 프로세스(0 zombie)

    * Cpu(s):  0.2%us,  0.1%sy,  0.0%ni, 99.3%id,  0.4%wa,  0.0%hi,  0.0%si,  0.0%st

사용자가 사용중인 CPU의 사용율(us), 시스템이 사용하는 CPU의 사용율(sy), NICE 정책에 의해 사용되는 CPU의 사용율(ni), 사용되지 않는 CPU의 미사용율(id), 입출력 대기상태의 사용율(wa)

    * Mem:   4031448k total,  3306440k used,   725008k free,   263928k buffers

전체 물리적인 메모리(total), 사용중인 메모리(used), 사용되지 않는 여유 메모리(free), 버퍼된 메모리(buffers)

    * Swap:  8193140k total,     2900k used,  8190240k free,  1588424k cached

전체 스왑 메모리(total), 사용중인 스왑 메모리(used), 남아있는 스왑메모리(free), 캐싱메모리(cached)
 
세부 정보 필드별 항목


  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

    * PID : 프로세스 ID (PID)
    * USER : 프로세스를 실행시킨 사용자 ID
    * PRI : 프로세스의 우선순위 (priority)
    * NI : NICE 값. 일의 nice value값이다. 마이너스를 가지는 nice value는 우선순위가 높음.
    * VIRT : 가상 메모리의 사용량(SWAP+RES)
    * RES : 현재 페이지가 상주하고 있는 크기(Resident Size)
    * SHR : 분할된 페이지, 프로세스에 의해 사용된 메모리를 나눈 메모리의 총합.
    * S : 프로세스의 상태 [ S(sleeping), R(running), W(swapped out process), Z(zombies) ]
    * %CPU : 프로세스가 사용하는 CPU의 사용율
    * %MEM : 프로세스가 사용하는 메모리의 사용율
    * COMMAND : 실행된 명령어

출처 : http://www.starhost.co.kr/xe/108405
Posted by 햇 님
Database/Oracle2008. 12. 9. 16:32

오라클 함수에 날짜형식으로 변환할수 있는 함수인
to_date 함수가 있습니다.

오늘은 to_date() 를 사용하는 방법을 적어볼까 합니다.
제가 주로 쓰던거와.. 오늘 급작스럽게 테스트해보고 알게된 내용 정리죠 ^^;

주로 to_date를 사용할때는
select to_date('20081209142500' , 'YYYYMMDDHH24MISS') from dual;

과 같이 사용해서 날짜형식을 만들어 사용했습니다.
(저와.. 저희회사에서 주로... ㅎㅎㅎ;;)

그런데 제가 추가로 급여관리 프로그램을 만들던 도중에..
12월달 data들(출/퇴근기록) 계속 저장해놓고 있었습니다..  (미리 DB설계가 반영이 안돼있던터라)

그리고 이제 저장해놓은 백업데이터들을 DB에 입력하려는데..
그동안 저장해온 출/퇴근시간이.. 이렇게 저장되어있었죠..
2008-11-28 오전 8:59:54

ㅠ.ㅠ;     순간 난감한가운데... 열심히 뒤적뒤적...  찾다보니

http://www.gotapi.com     (각종레퍼런스제공)

훗 제가 자주애용하던곳에서 to_date 함수를 검색해서 찾아봤습니다.
SELECT TO_DATE(
'January 15, 1989, 11:00 A.M.',
'Month dd, YYYY, HH:MI A.M.',
'NLS_DATE_LANGUAGE = American')
FROM DUAL;
예제로 요런 코드가 제공되더군요.. 
이걸가지구 또 한참을 삽질하다가.. 'NLS_DATE_LANGUAGE = American'  이라는 부분은
별로 필요없는듯하여 버리구.. 만들어낸것이
SELECT TO_DATE('2008-11-28 오전 8:59:54','YYYY-MM-DD A.M. HH:MI:SS')
FROM DUAL;
결국 원하는 값을 얻어냈습니다. ㅋ
다른게 아닌 char 형식의 것들에서 date 형식으로의 변환을 위한 매칭되는 예약어들만 알면
해결되는것이었습니다~ ㅎ
YYYY(4자리 년도) , MM(두자리 월) , DD (두자리 날짜) , A.M. (요게 오전,오후를 나타내는거죠)
HH(시간이구요, 요건 1~12로 표현되는 시간), MI(두자리 분), SS(두자리 초)
HH24(이것두 시간표현이구요, 1~24시로 표현합니다. 이걸쓰면 A.M. 은 필요없겠죠?)

하하.. 무튼.. 삽질은 계속되는군요..
자주자주 글을 써야하는데...  ㅠ.ㅠ  정말  간만에 쓰네요.. 뭐; 보시는분이 계실지 모르겠지만요;;;




Posted by 햇 님
Database/Oracle2008. 5. 29. 15:27
오늘 소스분석을 하면서 TRUNC() 함수를 보게 되었다.

truncate 의 줄임말인듯하다.
뜻은 절삭? 이라고 해야하나... 사전의 뒤져보는 치밀함까지는 나에게 없다;
대충 짐작하기에 절삭.. 혹은 내림? 정도로 생각하려고 한다.

SELECT SYSDATE FROM DUAL;

위 문장을 실행해보면 현재 날짜를 출력하여준다.

사용자 삽입 이미지


SYSDATE 는 DATE 형식으로 날짜를 출력해주는데..

TRUNC() 함수는 날짜 형식 또한 잘라낼수 있다.
내가 아는 바에 의하면 숫자와 날짜에 한해서만 동작하는것으로 알고 있다.

그럼 TRUNC() 함수를 사용해서 현재날짜를 절삭해보면..

SELECT TRUNC(SYSDATE) FROM DUAL;


위의 문장을 실행하면 된다.
결과값은

사용자 삽입 이미지

자동으로 오늘 날짜에서 시간이 떨어져 나가고 년-월-일 의 값으로 나온다.
조금더 명시적으로 표현해주자면 아래와 같이 써주어도 된다.

SELECT TRUNC(SYSDATE , 'DD') FROM DUAL;

위의 SQL 명령도 같은 결과값을 가진다.


그럼 이어서 여기에 날짜를 더하거나 빼거나 하고.. 절삭한후에 시간을 지정해주는 부분을 보자
조금 더 살펴봐야 알겠지만.. 너무나 쉽게도.. 그냥 더하고 빼면 된다 -_-;

SELECT TRUNC(SYSDATE+1) FROM DUAL;

위의 문장을 실행하게되면..

사용자 삽입 이미지

위의 결과값인 2008-05-29 에서 하루가 추가되는것을 볼 수 있습니다.
같은 방식으로 7을 더하면 일주일 후의 날짜가 나오겠죠?


SELECT TRUNC(SYSDATE+1)+1/24 FROM DUAL;

이번에 SQL 문을 실행하면 절삭하였던 시간을 다시 붙여줄수 있습니다.

사용자 삽입 이미지
기본적이 구문을 시작으로 간단한 응용까지 해봤습니다.
좀더 응용해보면 시간아래에  분/초 도 달수 있겠죠?

Posted by 햇 님
Database/Oracle2008. 5. 14. 10:35
회사에서 소스를 파악하다가 쿼리문중에 decode 라는 함수를 보았다.
언젠가 본적이 있는거 같은데 생각이 안나서 열심히 뒤져보고 찾아보았다.

- 구문
DECODE({column | expression}, search1, result1 [,search2,result2] ... [,default] )

이와 같이 사용하면 된다.

설명을 하자면 일단은 맨처음에 decode 하고자하는 column을 적고 그 뒤에는
coulumn에 존재하는 찾을 값들을 적고, 그 뒤에 새롭게 쓰고자하는 값을 적어넣으면 된다.

emp 테이블로 간단하게 예를 들자면

select ename, job,
    decode(job, 'ANALYST', '분석가',
                'CLERK', '점원',
                'MANAGER', '관리자',
                'SALESMAN', '영업사원',
                'PRESIDENT', '사장님') as new_job
from emp;

위의 쿼리문을 실해하면 job 의 값에 따라서 new_job 컬럼에 대응되는 값들이
나타나게 된다.

참고글
 -
http://luckys.tistory.com/35

원문
 -
http://blog.naver.com/bleu_ciel/140037398850

Posted by 햇 님