ORACLE/Script (7) 썸네일형 리스트형 [Oracle] Statspack Snapshot유지 기간 Retention 설정 관리 오라클에서 성능 분석을 위해 Statspack을 설정하였는데 시간이 지남에 따라 SYSAUX 테이블스페이스에 과도하게 데이터가 쌓이는 것을 확인하였다.AWR Report는 Retention 에 설정한 유지 기간에 따라 자동으로 스냅샷을 관리해주는 기능이 있지만 Statspack 에는 자동 관리 기능이 없다. Statspack을 사용할 경우 직접 정리 작업을 하거나 스케줄러를 등록하여야 한다. Statspack 스냅샷 확인-- Statspack 스냅샷 리스트 확인select * from stats$snapshotorder by SNAP_TIME desc; Statspack 데이터 삭제-- 3달 경과한 Statspack 데이터 삭제DELETE from stats$snapshot where snap_time.. [ORACLE] LOB 컬럼 테이블스페이스 변경 Oracle 데이터베이스의 성능과 저장 공간 활용을 최적화하기 위해 LOB(Large Object) 컬럼과 관련 인덱스의 테이블스페이스 변경이 필요할 수 있다.아래는 LOB 컬럼 및 인덱스 테이블스페이스 변경을 위한 단계별 가이드이다. 1. 현재 LOB 컬럼과 테이블 확인dba_segments와 dba_lobs 뷰를 조인하여 LOB(Large Object) 세그먼트에 대한 정보를 검색select s.OWNER , TABLE_NAME , COLUMN_NAME from dba_segments s, dba_lobs l where s.SEGMENT_NAME = l.SEGMENT_NAME and s.OWNER = l.OWNER and SEGMENT_TYPE = 'LOBSEGMENT';결과 예시OWNER: LOB .. [ORACLE] 통계정보 수집과 백업 쿼리 통계정보의 의미와 필요성 통계정보는 데이터베이스의 성능 최적화를 위해 사용되는 핵심 요소 중 하나입니다. 통계정보는 데이터베이스 엔진이 쿼리를 최적화하고 실행 계획을 수립하는 데 도움을 주는 데이터입니다. 여기에는 테이블의 크기, 데이터 분포, 인덱스 효과 등이 포함됩니다. 통계정보의 중요성: 쿼리 최적화: 데이터베이스 엔진은 쿼리를 실행할 때 최적의 경로를 선택하기 위해 통계정보를 활용합니다. 정확한 통계를 갖고 있으면 데이터 액세스 경로를 최적화하여 쿼리 성능을 향상시킬 수 있습니다. 인덱스 성능 향상: 인덱스의 선택과 사용은 데이터의 분포와 관련이 있습니다. 통계 정보를 통해 엔진은 어떤 인덱스를 사용할지 결정하고 효과적으로 데이터에 액세스할 수 있습니다. 통계정보에 포함되는 내용 테이블 통계: 테.. ORACLE JOB 등록 및 관리(DBMS_JOB) ORACLE JOB 등록 및 관리(DBMS_JOB) Oracle 에서 제공하는 DBMS_JOB 패키지를 이용하여 스케줄링 관리를 할 수 있다. Job 등록(submit) 예시 procedure_name 이라는 프로시저를 매일 새벽 6시에 수행 DECLARE X NUMBER; BEGIN SYS.DBMS_JOB.SUBMIT ( JOB => X , WHAT => 'PROCEDURE_NAME;', NEXT_DATE => SYSDATE, INTERVAL => 'TRUNC(SYSDATE + 1) + 1/24*6', NO_PARSE => FALSE ); END; Job 등록(submit) 파라미터 JOB : JOB Number. 자동으로 할당되므로 건드릴 필요 없음. WHAT : 수행할 프로시저 명 기입. ';' 빠.. ORACLE Temp file 관리 명령어 정리 temp 파일 경로 변경을 위해서는 신규 temp 테이블스페이스 생성 > 신규 temp 테이블스페이스를 default로 변경 > 기존 temp 삭제 순서로 진행하여야한다.-- 신규 temp 테이블스페이스 생성 create temporary tablespace TEMP파일명 tempfile '/oratemp/temp01.dbf' size 1G; -- default temp 변경 alter database default temporary tablespace TEMP파일명; -- 기존 temp 삭제 drop tablespace TEMP파일명; -- OS상의 데이터파일도 함께 삭제 drop tablespace TEMP파일명 including contents and datafiles; ORALCE Redo Log 관리 명령어 정리 온라인 리두로그 그룹 추가-- 온라인 리두 그룹 추가 alter database add logfile '/oracle_redo/redo01.rdo' size 200M; -- 온라인 리두 그룹 여러 개 추가 alter database add logfile ('/oracle_redo/redo01.rdo','/oracle_redo/redo02.rdo') size 200M; 온라인 리두로그 그룹 삭제-- 온라인 리두로그 그룹 삭제 alter database drop logfile group 1; 온라인 리두로그 멤버 추가멤버 추가 시 그룹의 기존 멤버와 동일한 크기로 생성하기 때문에 사이즈 명시하지 않음.-- 온라인 리두로그 멤버 추가 alter database add logfile member '/orared.. Oracle 실제 수행된 쿼리의 실행 계획 확인(dbms_xplan.display_cursor) dbms_xplan.display_cursor 로 실제 수행된 쿼리의 실행 계획을 확인할 수 있다. 1. 쿼리 수행 전세션 레벨로 설정--세션 스키마 설정 : 쿼리가 수행되는 스키마로 설정 alter session set current_schema=유저명; --실행계획 레벨 설정 alter session set statistics_level=all; 2. 쿼리 수행/*+gather_plan_statistics */ 힌트 추가 저는 SQL 검색을 용이하게 하기 위해 /*오늘01*/ 이라는 힌트를 추가합니다.SELECT /*+gather_plan_statistics */ /*오늘01*/ col1, col2, from ... 이때 확인해야 할 사항 : 결과 값이 모두 출력이 되어야 합니다. 결과 값이 모두 출.. 이전 1 다음