1. 개요 - 아카이브 로그 모드 환경에서 백업 정책 등을 수립하기 위해 아카이브 발생량을 수치화. - 아카이브 로그 공간 및 OS 내 유기적인 공간 확보를 위함(삭제 정책 없이 로그만 계속 쌓게 되면 공간 부족으로 시스템 장애가 발생) - RMAN을 통해 아카이브 로그를 백업/삭제 (보통 3일 주기로 백업 및 삭제 절차 수행) - 아래 쿼리를 통해 아카이브 로그 파일 발생량을 확인하여 백업 및 삭제 정책을 수립할 수 있다. 2. 실행 쿼리 select thread# "Thread#", substr(to_char(first_time,'yyyy/mm/dd'),1,10) "Day", decode(sum(decode(substr(to_char(first_time,'HH24'),1,2),'00',1,0)),0,..
전체 글
1. 개요 인덱스 생성 시 데이터 건수에 따라 소요시간이 매우 길어질 수 있다. 벌크 데이터 적재나 갱신같은 경우 단위처리방식으로 끊어서 진행할 수 있어서 진행률을 확인 가능하지만 인덱스의 경우에는 단위처리 방식이 불가능하여 한번 실행 시 쿼리가 멈추지 않고 계속 실행되어야 한다. 오래 수행되는 인덱스일수록 생성이 잘 진행되고 있는지, 루프를 돌며 어딘가에 에러가 발생해 멈춰있는 것이 아닌지 확인하기가 어렵다. 이런 경우 인덱스 생성 진행률을 확인하여 완료시간 또한 추정이 가능하다. (SQL Server 2014 이상에서만 작동) 2. 선행 작업 profile on 혹은 '실제 실행 계획'을 활성화 상태로 변경한다. how to 1) how to 2) set statistics profile on 3. ..
MSSQL 날짜 Convert 기준표 번호 쿼리 결과 코드 0 CONVERT(CHAR(19), DATETIME, 0) 01 02 2000 1:14PM MM DD YYYY H:MM 1 CONVERT(CHAR(10), DATETIME, 1) 01/02/2000 MM/DD/YYYY 2 CONVERT(CHAR(8), DATETIME, 2) 00.01.02 YY.MM.DD 3 CONVERT(CHAR(8), DATETIME, 3) 02/01/00 DD/MM/YY 4 CONVERT(CHAR(8), DATETIME, 4) 02.01.00 DD.MM.YY 5 CONVERT(CHAR(8), DATETIME, 5) 02-01-00 DD-MM-YY 6 CONVERT(CHAR(8), DATETIME, 6) 02 01 00 DD..
USE [DB명] /********************************** 인덱스(S) **********************************/ --TABLE 상세 정보 쿼리 SELECT a.NAME AS table_name, b.NAME AS column_name, c.NAME AS data_type, c.length AS data_length FROM sys.tables a INNER JOIN sys.syscolumns b ON a.object_id = b.id INNER JOIN sys.systypes c ON c.xtype = b.xtype WHERE a.NAME = '테이블명' ORDER BY table_name --통계확인(업데이트날짜, 테이블명, 인덱스명) SELECT Stat..
SET DEADLOCK_PRIORITY 설정값 교착상태 발생시 트랜젹션의 중요도를 지정하는 것 * 설정값 SET DEADLOCK_PRIORITY LOW - 교착상태 발생시 다른 세션의 교착상태 우선순위가 NORMAL, HIGH, -5 보다 큰 경우 현재 세션을 교착상태가 되도록 지정 SET DEADLOCK_PRIORITY NORMAL(default 값) - 교착상태 발생시 다른 세션의 교착상태 우선순위가 NORMAL, 0과 같을 경우 현재 세션을 교착상태가 되도록 지정 SET DEADLOCK_PRIORITY HIGHT - 교착상태 발생시 다른 세션의 교착상태 우선순위가 HIGH, 5와 같을 경우 현재 세션을 교착상태가 되도록 지정 SET DEADLOCK_PRIORITY 정수값 정수값 : -10~10 사이..
SELECT * FROM ( SELECT TOP 100 -- 상위 100건만 조회 QS.creation_time AS creation_time, -- 실행한 시간 SUBSTRING(ST.text,(QS.statement_start_offset/2)+1, ((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1 ) AS statement_text, --SQL ST.text, -- 실행한 SQL QS.total_worker_time, QS.last_worker_time, QS.max_worker_time, QS.min_worker..