728x90
728x90
MSSQL에서 로깅을 최소화하는 방법
- 데이터베이스 복구 모델 : Simple 또는 BULK LOGGED 복구 모델을 사용
- SSIS(DTS), SELECT INTO..., BULK INSERT 등의 툴과 구문 사용
- INSERT 구문에 TABLOCK 힌트 사용
INSERT 구문에 사용하는 TABLOCK 힌트는 MSSQL 2008 버전부터 제공하는 기능으로
대량 INSERT 작업에서 각 행별로 로깅하지 않고, 익스텐트 할당 시에만 로깅을 함으로써 INSERT 처리 작업의 시간을 크게 단축할 수 있음
[충족조건]
- 복제 대상 테이블이 아니어야 함.
- 단순 대량 삽입 모드
- 인덱스 없는 대상 테이블
- 클러스터 인덱스가 있는 경우, 데이터가 없는 빈 테이블
[Syntax]
INSERT INTO 타겟테이블명 WITH(TABLOCK)
SELECT 컬럼명 FROM 소스테이블명 WITH(NOLOCK)
참고) 관련 MSDN
728x90
728x90
'DB > MSSQL' 카테고리의 다른 글
[MSSQL] 인덱스 조각화 정보 조회 (0) | 2024.08.20 |
---|---|
[MSSQL] 접속 세션 조회 및 아이피 확인 (0) | 2024.08.20 |
[MSSQL] DB복원 후 사용자 권한 부여 (0) | 2024.08.20 |
[MSSQL] 서버 사양 조회 및 DB 버전 확인 (0) | 2024.08.20 |
[MSSQL] SP 내용 검색 쿼리 (0) | 2024.08.20 |