다음을 통해 공유


FILESTREAM 사용 및 구성

적용 대상: SQL Server

FILESTREAM을 사용하려면 먼저 SQL Server 데이터베이스 엔진의 인스턴스에서 FILESTREAM을 사용하도록 설정해야 합니다. 이 항목에서는 SQL Server 구성 관리자 사용하여 FILESTREAM을 사용하도록 설정하는 방법을 설명합니다.

FILESTREAM 사용

  1. 시작 메뉴에서 모든 프로그램 > SQL Server > 구성 도구로 이동한 다음, SQL Server 구성 관리자를 선택합니다.

    참고 항목

    최신 버전의 Windows에서 다음 지침에 따라 SQL Server 구성 관리자를 엽니다.

  2. 서비스 목록에서 SQL Server 서비스를 마우스 오른쪽 단추로 클릭한 다음 열기를 선택합니다.

  3. SQL Server 구성 관리자 스냅인에서 FILESTREAM을 사용하도록 설정할 SQL Server 인스턴스를 찾습니다.

  4. 인스턴스를 마우스 오른쪽 단추로 클릭한 다음, 속성을 선택합니다.

  5. SQL Server 속성 대화 상자에서 FILESTREAM 탭을 선택합니다.

  6. Transact-SQL 액세스에 FILESTREAM 사용 확인란을 선택합니다.

  7. Windows에서 FILESTREAM 데이터를 읽고 쓰려면 파일 I/O 스트리밍 액세스에 FILESTREAM 사용을 선택합니다. Windows 공유 이름 상자에 Windows 공유의 이름을 입력합니다.

  8. 원격 클라이언트가 이 공유에 저장된 FILESTREAM 데이터에 액세스해야 하는 경우 원격 클라이언트가 FILESTREAM 데이터에 대한 스트리밍 액세스를 가질 수 있도록 허용을 선택합니다.

  9. 적용을 선택합니다.

  10. SQL Server Management Studio에서 새 쿼리를 선택하여 쿼리 편집기를 표시합니다.

  11. 쿼리 편집기에서 다음 Transact-SQL 코드를 입력합니다.

    EXEC sp_configure filestream_access_level, 2;
    RECONFIGURE;
    
  12. 실행을 선택합니다.

  13. SQL Server 서비스를 다시 시작합니다.

모범 사례

물리적 구성 및 유지 관리

FILESTREAM 스토리지 볼륨을 설정할 때 다음 지침을 고려합니다.

  • FILESTREAM 컴퓨터 시스템에서 약식 파일 이름을 해제합니다. 짧은 파일 이름은 만드는 데 훨씬 더 오래 걸립니다. 짧은 파일 이름을 사용하지 않도록 설정하려면 Windows fsutil 유틸리티를 사용합니다.

  • 자기 저장을 사용하여 FILESTREAM 컴퓨터 시스템을 정기적으로 조각 모음합니다.

  • 64KB NTFS 클러스터를 사용합니다. 압축 볼륨은 4KB NTFS 클러스터로 설정해야 합니다.

  • FILESTREAM 볼륨에서 인덱싱을 사용하지 않도록 설정하고 disablelastaccess을 설정합니다. disablelastaccess를 설정하려면 Windows fsutil 유틸리티를 사용합니다.

  • FILESTREAM 볼륨에 대한 바이러스 검사가 필요 없을 때는 해제합니다. 바이러스 백신 검사가 필요한 경우 위반 파일을 자동으로 삭제하는 정책을 설정하지 마세요.

  • 애플리케이션에서 요구되는 내결함성 및 성능 RAID 수준을 설정하고 조절합니다.

RAID 수준 쓰기 성능 읽기 성능 내결함성 설명
RAID 5 Normal Normal 우수 성능이 하나의 디스크 또는 JBOD보다 낫습니다. 스트라이프가 있는 RAID 0 또는 RAID 5보다 작습니다.
RAID 0 우수 우수 None
RAID 5 + 스트라이프 우수 우수 우수 가장 비싼 옵션입니다.

물리적 데이터베이스 디자인

FILESTREAM 데이터베이스를 디자인할 때 다음 지침을 고려합니다.

  • FILESTREAM 열에는 해당하는 uniqueidentifier ROWGUID 열이 함께 있어야 합니다. 이러한 종류의 테이블에는 고유 인덱스도 함께 제공해야 합니다. 일반적으로 이 인덱스가 클러스터형 인덱스가 아닙니다. 데이터베이스 비즈니스 논리에 클러스터형 인덱스가 필요한 경우 인덱스에 저장된 값이 임의 값이 아닌지 확인해야 합니다. 임의의 값인 경우에는 테이블에서 행이 추가되거나 제거될 때마다 인덱스가 다시 정렬됩니다.

  • 성능상의 이유로 FILESTREAM 파일 그룹 및 컨테이너는 운영 체제, SQL Server 데이터베이스, SQL Server 로그, tempdb 또는 페이징 파일 이외의 볼륨에 있어야 합니다.

  • 공간 관리 및 정책은 FILESTREAM에서 직접적으로 지원되지 않습니다. 그러나 각 FILESTREAM 파일 그룹을 별도의 볼륨에 할당하고 볼륨의 관리 기능을 사용하여 공간을 관리하고 정책을 간접적으로 적용할 수 있습니다.