본문 바로가기

Oracle

Redo Log File 장애 case 기본적인 대처 순서 1. Current 파일 / Current 아닌 파일 지웠는지 확인 2. 아카이브 파일 / 노 아카이브 파일을 지웠는지 확인 case1. Current 가 아닌 1개의 member 가 삭제되는 장애 얼럿로그 확인 -> 지워진 목록 drop SYS> alter database drop logfile member '/data/backup/close/redo01_a.log'; -> 지워진 멤버 생성 SYS> alter database add logfile member '/data/backup/close/redo01_a.log' to group 1; 끝. case2. Current 가 아닌 1개의 group 이 삭제되는 장애 얼럿로그 확인 -> 지워진 그룹 drop SYS> alter dat.. 더보기
Oracle 11gR2 NF: Auditing Enhancements (DBMS_AUDIT_MGMT) Oracle 11g Release 1 turned on auditng by default for the first time. Oracle 11g Release 2 now allows better management of the audit trail using the DBMS_AUDIT_MGMT package. Moving the Database Audit Trail to a Different Tablespace Controlling the Size and Age of the OS Audit Trail Purging Audit Trail Records Initializing the Management Infrastructure Timestamp Management Manual Purge Automated .. 더보기
ORACLE11g alert.log 와 trace file 확인 Oracle 11g 부터 Alert.log 와 trace file 은 새로운 형식으로 생성이 되며, 이는 ADR (Automatic Diagnotic Repository) 에 생성이 된다. 본 문서에서는 Database 에 심각한 에러가 발생한 경우, ADRCI 명령어를 이용하여 에러를 확인하고 관련된 alert.log 및 trace file 을 오라클 고객지원센터로 전송하는 방법에 대해서 설명한다. IPS 사용법 : ORACLE 11g 는 problem (Database 에서 발생한 에러코드)과 incident (에러가 발생한 기록)에 관련된 trace file 들을 자동으로 수집해주는 기능을 제공한다. 이 기능을 IPS (Incident Packaging Service) 라고 하며, 인터페이스로 GU.. 더보기
[퀴즈] 문자는 문자 그대로 숫자0은 0,소수는 첫째자리까지만 출력해보세요~ T 테이블에 A컬럼은 vchar2형식이고 문자와 숫자가 혼합되어 데이터가 들어있다. 문자는 그대로 출력을 하고 숫자인경우 0은 그대로 0으로 나타내고 소수인경우엔 소수 첫째자리까지만 나타내고자 한다. WITH T AS ( SELECT '0' A FROM DUAL UNION ALL SELECT '42.195' FROM DUAL UNION ALL SELECT 'ND' FROM DUAL UNION ALL SELECT 'BD' FROM DUAL ) ->정답 트리플 클릭 SELECT A , SUBSTR(A,1,INSTR(A||'.','.')+1) B FROM T 더보기
[퀴즈] Rollup을 이용한 소계의 정렬 다음 쿼리를 실행하면 사원의 급여와 부서별 소계 및 총계가 출력됩니다. 이 결과를 부서별 소계 순서대로 정렬하는 쿼리를 작성해 주세요. SELECT deptno, empno, SUM(sal) sum_sal FROM scott.emp GROUP BY ROLLUP(deptno, empno) ; 정렬전 결과 정렬후 결과 DEPTNO EMPNO SUM_SAL DEPTNO EMPNO SUM_SAL 10 7782 2450 20 7369 800 10 7839 5000 20 7566 2975 10 7934 1300 20 7788 3000 10 8750 20 7876 1100 20 7369 800 20 7902 3000 20 7566 2975 20 10875 20 7788 3000 30 7499 1600 20 7876 .. 더보기
테이블 삭제후 휴지통 관리 및 테이블 복원 SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- DEPT TABLE EMP TABLE BONUS TABLE SALGRADE TABLE SQL> drop table bonus; Table dropped. SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- DEPT TABLE EMP TABLE SALGRADE TABLE BIN$Iknc2NuIRTC6M/F96CL9Mw==$0 TABLE SQL> show recyclebin; ORIGINAL NAME RECYCLE.. 더보기
실수로 Data 삭제후 Commit 한 경우 복구 방법(일시적) SQL> insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) 2 select empno, ename, job, mgr, hiredate, sal, comm, deptno 3 from emp as of timestamp ( systimestamp - interval '10' minute) ; 더보기
[퀴즈] RANK()함수를 사용하지 않고 순위 구하기 WITH T AS( SELECT 1 MONEY, 1 NUM FROM DUAL UNION ALL SELECT 1 , 2 FROM DUAL UNION ALL SELECT 2 , 3 FROM DUAL UNION ALL SELECT 2 , 4 FROM DUAL UNION ALL SELECT 5 , 5 FROM DUAL ) MONEY가 같으면 같은 랭크에 속하고 그 뒤에 랭크는 그 수만큼 더한 랭크가 나와야 된다. 결과는 다음과 같다. 결과 NUM MONEY RNK ---------- ---------- ---------- 5 5 1 3 2 2 4 2 2 1 1 4 2 1 4 =>정답 트리플 클릭 SELECT A.NUM, A.MONEY, COUNT(B.MONEY)+1 RNK FROM T A, T B WHERE A.. 더보기
[퀴즈] 행을 열로 변환 퀴즈 code value 1 aaa 1 bbb 2 ccc 3 ddd 3 eee => 위 data를 아래의 형식으로 code value1 value2 1 aaa bbb 2 ccc 3 ddd eee =>정답 트리플 클릭 WITH T AS ( SELECT '1' AS CODE, 'AAA' AS VAL FROM DUAL UNION ALL SELECT '1' AS CODE, 'BBB' AS VAL FROM DUAL UNION ALL SELECT '2' AS CODE, 'CCC' AS VAL FROM DUAL UNION ALL SELECT '3' AS CODE, 'DDD' AS VAL FROM DUAL UNION ALL SELECT '3' AS CODE, 'EEE' AS VAL FROM DUAL ) SELECT CODE.. 더보기
[퀴즈] 조건부 누적쿼리 퀴즈 [퀴즈] 조건부 누적 쿼리 다음과 같은 seq, amt 자료가 있을때 result를 구하는 쿼리를 작성하세요. 순차적으로 amt값을 누적합산하되 그 값이 음수일경우엔 0이 되어야 합니다. WITH t AS ( SELECT 1 seq, -2000 amt FROM dual UNION ALL SELECT 2, 4000 FROM dual UNION ALL SELECT 3, -5000 FROM dual UNION ALL SELECT 4, -2000 FROM dual UNION ALL SELECT 5, 3000 FROM dual UNION ALL SELECT 6, 1500 FROM dual UNION ALL SELECT 7, -250 FROM dual UNION ALL SELECT 8, 320 FROM dual U.. 더보기