본문 바로가기

oracle159

Offset , Limit (페이징 처리) 12c 이전의 Oracle은 Top-N쿼리를 구현하기 위해 ROWNUM을 사용해 왔습니다. 하지만 이는 쿼리를 View로 감싸야 하고 순서보장을 원한시에는 한번더 View로 감싸 쿼리가 복잡해지는 단점이 있었습니다. Oracle 12c부터 Row limiting 절을 이용하여 기존에 사용하던 방식을 간단하게 풀어 Top-N 쿼리를 구현할 수 있게 되었습니다. 구문의 이해 [ OFFSET offset { ROW | ROWS } ] [ FETCH { FIRST | NEXT } [ { rowcount | percent PERCENT } ] { ROW | ROWS } { ONLY | WITH TIES } ] OFFSET 건너뛸 행의 수를 지정, 즉 시작 행을 정함. 생략 시 offset 값은 0 FETCH 반환.. 2020. 8. 19.
ORA-00257 FRA 디렉토리가 Full일때 조치사항 조치사항으로는 두가지가 있습니다. 1.FRA의 불필요한 파일(아카이브 로그 등)을 삭제하여 용량을 확보 2.FRA의 크기를 늘려 용량을 확보 Alert Log에는 아래와 같은 에러 발생한다. Errors in file /app/oracle/diag/rdbms/newysbae/newysbae/trace/newysbae_arc2_13613.trc: ORA-19809: limit exceeded for recovery files ORA-19804: cannot reclaim 50049024 bytes disk space from 4070572032 limit ARC2: Error 19809 Creating archive log file to '/app/oracle/flash_recovery_area/NEWYS.. 2020. 7. 25.
Session 이란? (session kill 명령어 포함) 오라클은 사용자와 데이터베이스 접속이 이루어지면 세션을 생성합니다. 세션은 사용자가 데이터베이스에 연결되어 있는 동안 계속 유지되고, 각 세션에는 SID(Sesiion ID)와 시리얼번호(Serial#)가 부여됩니다. SID와 시리얼번호가 두개 존재하는 이유는 세션이 종료되었으나 다른 세션이 동일한 SID를 갖고 시작되었을 때 세션 명령들이 정확한 세션에 적용될 수 있도록 하기위해서 입니다. 세션이 사용자에 의해 작업중이라면 Active상태가되고 작업을 하게 됩니다. Inactive 세션은 연결은 되어 있지만 작업을 하지 않는 상태입니다. 즉, 자원은 할당되어 있지만 사용하지 않는 세션이라면 불 필요한 자원낭비가 될 수도 있습니다. 기본적으로 오라클 DB에 최대 Session으로 적용되어있는 것을 확인할.. 2020. 4. 17.
11gR2 RAC Grid 재기동 시 특정 노드가 올라오지 않는 현상 Grid 설치 후 서버 재기동하였을 때 두개의 노드 중 1번노드만 crsctl stat res -t가 보였고 2번노드는 crsctl stst res -t 시 아래와 같은 에러가 발생하며 되지 않았음. CRS-4535: Cannot communicate with Cluster Ready Services CRS-4000: Command Status failed, or completed with errors. CRS-4535와 CRS-4000번은 너무 포괄적인 에러라 해당 에러를 검색했을 때 현재 이슈에 대한 해결방법에 딱 맞는게 나오지 않았습니다. 우선 제일 먼저 의심해봐야했던건 OHAS 프로세스입니다. 이 프로세스는 다른 CRS 데몬들의 기동에 직,간접적으로 영향을 주는 프로세스로 제일 먼저 띄워져 있어야.. 2020. 4. 1.