반응형

DBMS 29

Oracle) ORA-04063 오류: 테이블 DROP & CREATE로 인한 View INVALID 원인과 해결

Oracle을 운영하다 보면 View를 조회할 때 다음과 같은 오류가 발생하는 경우가 있다.ORA-04063: view "SCHEMA.VIEW_NAME" has errors특이한 점은 View 내부의 SELECT 쿼리를 직접 실행하면 정상적으로 조회되는데, View를 통해 조회할 때만 ORA-04063 오류가 발생하는 경우이다.이러한 현상은 View가 참조하는 테이블을 주기적으로 DROP → CREATE하는 환경에서 발생할 수 있다.1. 발생 현상다음과 같은 View가 있다고 가정한다.CREATE OR REPLACE VIEW V_SAMPLE ASSELECT A.ID, A.NAME, B.VALUEFROM TABLE_A AJOIN TABLE_B B ON A.ID = B.ID;그런데 다음..

DBMS/Oracle 2026.09.21

Oracle) 오늘 기준 특정 날짜 가져오기

Oracle 오늘 기준 특정 날짜 가져오기오늘 기준 이전 3년 YEAR목록 가져오기SELECT TO_CHAR(TO_NUMBER(TO_CHAR(SYSDATE, 'YYYY')) - LEVEL) AS YYYY FROM DUAL CONNECT BY LEVEL 오늘 기준 +5일 DAY목록 가져오기 (오늘 제외) SELECT (SYSDATE + LEVEL) AS DT_CAL, TO_CHAR(SYSDATE + LEVEL, 'YYYYMMDD') AS YYYYMMDD, TO_CHAR(SYSDATE + LEVEL, 'YYYY-MM-DD') AS DISPLAY_DATE FROM DUAL CONNECT BY LEVEL 오늘 기준 +5일 DAY목록 가져오기 (오늘 포함)SELECT (SYSDA..

DBMS/Oracle 2026.08.25

Oracle) 오라클 Full 백업 후 스키마별 복원

오라클 Full 백업 후 스키마별 복원Export : 데이터베이스 전체(FULL)로 백업Import : 필요한 스키마(SCHEMA)만 복원전체 FULL Exportexpdp system/password \ full=y \ directory=DATA_PUMP_DIR \ dumpfile=full_20260804.dmp \ logfile=full_20260804.logorexpdp "'/ as sysdba'" \ full=y \ directory=DATA_PUMP_DIR \ dumpfile=full_20260804.dmp \ logfile=full_20260804.logDump 포함 내용모든 사용자(User)모든 스키마테이블인덱스ViewProcedureSequence..

DBMS/Oracle 2026.08.04

[Oracle] Data Pump Export(expdp) 실행 시 UDE-28000, ORA-28000(Account is Locked) 해결 방법

Oracle Data Pump를 활용한 Export시 UDE-28000, ORA-28000 계정 잠김된 경우 해결 법expdp(Data Pump Export)로 접속하려는 Oracle 계정이 잠금(Account Locked) 상태일 때 발생하는 오류명령 실행 (예시)$ORACLE_HOME/bin/expdp system/{비밀번호} full=y ~~~`오류 내용Export: Release 11.2.0.4.0 - Production on Wed Jul 29 09:33:33 2026Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.UDE-28000: operation generated ORACLE error 28000ORA..

DBMS/Oracle 2026.07.29

[Oracle] Export/Import - Data Pump 실행시 ORA-31634, ORA-31664 오류

[Oracle] Export/Import - Data Pump 실행시 ORA-31634, ORA-31664 오류ORA-31634: job already exists→ 동일 작업명이 실행 중이거나 마스터 테이블이 남아 있을 때 발생 가능ORA-31664: unable to construct unique job name when defaulte→ 기본 작업명 생성 시 유일한 이름을 만들지 못한 경우남아있는 Data Pump 작업 조회SELECT OWNER_NAME, JOB_NAME, OPERATION, JOB_MODE, STATEFROM DBA_DATAPUMP_JOBS--WHERE STATE = 'NOT RUNNING'ORDER BY OWNER_NAME, JOB_N..

DBMS/Oracle 2026.07.14

[에러/ORA-01000] ORA-01000: 최대 열기 커서 수를 초과했습니다

ORA-01000: maximum open cursors exceeded ORA-01000: 최대 열기 커서 수를 초과했습니다 --sys나 system 유저로 접속하여 현재 설정된 커서 개수를 확인 한다. show parameter open_cursors --현재 사용중인 섹션의 커서 (100개 초과) 확인 select a.sid, s.process, s.machine, s.module, s.action, count(*) as cnt from V$OPEN_CURSOR a, V$SESSION s where s.sid = a.sid group by a.sid, s.process, s.machine, s.module, s.action having count(*) > 100 order by count(*) de..

DBMS/Oracle 2021.11.16

[ORALCE/PLAN] 오라클 Plan Table(실행계획) 생성 및 권한 부여

--//Oracle 11.2.0 for Windows 버전 기준 --//SYSDBA로 접속 ex) C:\>SQLPLUS "/as sysdba" --//이하 SQL-Plus : SQL> @"C:\oracle\product\11.2.0\dbhome_1\sqlplus\admin\plustrce.sql" grant plustrace to [사용자]; --//======================================= conn [사용자]/[패스워드]; @"C:\oracle\product\11.2.0\dbhome_1\rdbms\admin\utlxplan.sql" --//PLAN 확인 set linesize 120; set autot on; select * from tab where rownum=1; ==..

DBMS/Oracle 2021.08.19

[ORACLE/SQL] 여러 행을 컬럼 합치기 (WM_CONCAT, LISTAGG, XMLAGG, XMLELEMENT, 중복제거)

오라클의 여러행을 하나의 컬럼으로 합치는 쿼리를 메모하고져 글을 남깁니다. 자세한 설명은 하지 않겠습니다. (XMLAGG 및 정규식은 10g부터 사용 가능) WM_CONCAT SELECT WM_CONCAT(job) AS WM_JOBS FROM emp LISTAGG SELECT LISTAGG(job, ',') WITHIN GROUP(ORDER BY job) AS AGG_JOBS FROM emp LISTAGG (deptno 기준) SELECT LISTAGG(job, ',') WITHIN GROUP(ORDER BY job) OVER(PARTITION BY deptno) AS AGG_JOBS2 FROM emp LISTAGG (중복제거) SELECT LISTAGG(job, ',') WITHIN GROUP(ORDE..

DBMS/Oracle 2021.07.06
반응형