다음을 통해 공유


데이터 대량 가져오기에 대한 기본 지침

업데이트: 2006년 12월 12일

[!참고] 원격 테이블로 데이터를 대량으로 가져올 수 없습니다.

데이터 파일에서 Microsoft SQL Server 인스턴스로 데이터를 대량으로 가져올 경우 다음 지침을 따르십시오.

  • 사용자 계정에 대해 필요한 권한 가져오기
    bcp 유틸리티, BULK INSERT 문, 또는 INSERT ... SELECT * FROM OPENROWSET(BULK...) 문을 사용하는 사용자 계정에는 테이블에 대해 필요한 권한(테이블 소유자가 할당)이 있어야 합니다. 각 메서드에 필요한 권한에 대한 자세한 내용은 bcp 유틸리티, OPENROWSET(Transact-SQL)BULK INSERT(Transact-SQL)를 참조하십시오.

  • 대량 로그 복구 모델 사용
    이 지침은 전체 복구 모델을 사용하는 데이터베이스에 대한 내용입니다. 대량 로그 복구 모델은 인덱싱되지 않은 테이블()로 대량 작업을 수행할 때 유용합니다. 대량 로그 복구는 로그 행 삽입을 수행하지 않으므로 대량 로그 복구를 사용하면 트랜잭션 로그의 공간 부족 문제를 방지할 수 있습니다. 대량 로그 복구 모델에 대한 자세한 내용은 대량 로그 복구 모델에서의 백업을 참조하십시오.
    대량 가져오기 작업을 수행하기 바로 전에 대량 로그 복구 모델을 사용하여 데이터베이스를 변경하는 것이 좋습니다. 변경한 직후에는 데이터베이스를 전체 복구 모델로 다시 설정해야 합니다. 자세한 내용은 전체 또는 대량 로그 복구 모델에서 전환 고려 사항을 참조하십시오.

    [!참고] 대량 가져오기 작업 동안의 로깅을 최소화하는 방법은 대량 가져오기의 최소 로깅을 위한 선행 조건을 참조하십시오.

  • 데이터를 대량으로 가져온 후 백업
    단순 복구 모델을 사용하는 데이터베이스의 경우 대량 가져오기 작업이 완료된 후 전체 또는 차등 백업을 수행하는 것이 좋습니다. 자세한 내용은 SQL Server 데이터베이스의 전체 및 차등 백업 만들기를 참조하십시오.
    대량 로그 복구 모델 또는 전체 복구 모델의 경우에는 로그 백업으로 충분합니다. 자세한 내용은 트랜잭션 로그 백업 만들기를 참조하십시오.

  • 대규모 대량 가져오기의 성능 향상을 위해 테이블 인덱스 삭제
    이 지침은 이미 테이블에 있는 데이터에 비해 많은 양의 데이터를 가져오는 경우에 대한 내용입니다. 이 경우 대량 가져오기 작업을 수행하기 전에 테이블의 인덱스를 삭제하면 성능이 매우 향상됩니다.

    [!참고] 이미 테이블에 있는 데이터에 비해 적은 양의 데이터를 로드하는 경우에는 인덱스를 삭제하면 성능이 저하됩니다. 인덱스를 다시 작성하는 데 필요한 시간이 대량 가져오기 작업 동안 절약된 시간보다 길 수도 있습니다.

    자세한 내용은 대량 가져오기 성능 최적화를 참조하십시오.

  • 데이터 파일의 숨겨진 문자 찾기 및 제거
    주로 데이터 파일의 끝 부분에 있는 숨겨진 문자는 다양한 유틸리티와 텍스트 편집기를 사용하여 표시할 수 있습니다. 대량 가져오기 작업 동안 ASCII 데이터 파일에 있는 숨겨진 문자가 문제를 일으켜 "예기치 않은 Null 발견" 오류가 발생할 수 있습니다. 이 경우 숨겨진 문자를 모두 찾아서 제거하면 이 문제가 해결됩니다.

참고 항목

개념

bcp 유틸리티를 사용하여 대량 데이터 가져오기 및 내보내기
BULK INSERT 또는 OPENROWSET(BULK...)를 사용하여 데이터 대량 가져오기
데이터를 가져오거나 내보내기 위한 데이터 형식
데이터 대량 가져오기 및 내보내기 시나리오

관련 자료

bcp 유틸리티
BULK INSERT(Transact-SQL)
OPENROWSET(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 12월 12일

새로운 내용
  • 항목 윗부분에 참고를 추가했습니다.