포맷되지 않은 두 개의 원시 파티션을 사용하여 데이터베이스를 만들려고합니다.
Microsoft Docs에 따르면 다음과 같이 원시 파티션의 드라이브 문자 만 지정하면됩니다.
CREATE DATABASE DirectDevice
ON (NAME = DirectDevice_system, FILENAME = 'S:')
LOG ON (NAME = DirectDevice_log, FILENAME = 'T:')
그러나 SQL Server 2017은이 오류를 반환합니다.
메시지 5170, 수준 16, 상태 4, 줄 1
'S :'파일이 이미 있으므로 만들 수 없습니다. 파일 경로 또는 파일 이름을 변경하고 조작을 재 시도하십시오.
메시지 1802, 수준 16, 상태 4, 줄 1
CREATE DATABASE가 실패했습니다. 나열된 일부 파일 이름을 만들 수 없습니다. 관련 오류를 확인하십시오.
파일이 원시 파티션에있는 경우 os_file_name은 기존 원시 파티션의 드라이브 문자 만 지정해야합니다. 각 원시 파티션마다 하나의 데이터 파일 만 작성할 수 있습니다.
그리고 그렇습니다. 드라이브 S :와 T :는 모두 시스템에 존재하는 포맷되지 않은 원시 파티션입니다.
DISKPART> 디테일 파티션 파티션 4 유형 : ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 숨겨진 : 아니오 필수 : 아니오 속성 : 0000000000000000 바이트 단위 오프셋 : 999934656512 볼륨 ### Ltr 레이블 Fs 유형 크기 상태 정보 ---------- --- ----------- ----- ---------- ------- ---- ----- -------- * 볼륨 6 T RAW 파티션 127MB 정상 DISKPART> 파티션 3 선택 파티션 3이 이제 선택된 파티션입니다. DISKPART> 디테일 파티션 파티션 3 유형 : ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 숨겨진 : 아니오 필수 : 아니오 속성 : 0000000000000000 바이트 단위 오프셋 : 1000067825664 볼륨 ### Ltr 레이블 Fs 유형 크기 상태 정보 ---------- --- ----------- ----- ---------- ------- ---- ----- -------- * 볼륨 7 S RAW 파티션 129MB 정상
FILENAME = 'S'
및 에서 와 같이 드라이브 문자에서 콜론을 제거하면 다음 과 같은 FILENAME = 'T'
결과가 발생합니다.
메시지 5105, 수준 16, 상태 2, 줄 1
파일 활성화 오류가 발생했습니다. 실제 파일 이름 'S'가 올바르지 않을 수 있습니다. 추가 오류를 진단하고 정정 한 후 조작을 재 시도하십시오.
메시지 1802, 수준 16, 상태 1, 줄 1
CREATE DATABASE가 실패했습니다. 나열된 일부 파일 이름을 만들 수 없습니다. 관련 오류를 확인하십시오.
SQL Server 2000 설명서 는 CREATE DATABASE
섹션 아래에 다음 예제를 보여줍니다 .
H. 원시 파티션 사용
이 예는 원시 파티션을 사용하여 Employees라는 데이터베이스를 작성합니다. 원시 파티션은 명령문이 실행될 때 존재해야하며 각 원시 파티션에는 하나의 파일 만있을 수 있습니다.
USE master
GO
CREATE DATABASE Employees
ON
( NAME = Empl_dat,
FILENAME = 'f:',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = 'Sales_log',
FILENAME = 'g:',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO
그러나, 위의 예 쇼 SIZE
, MAXSIZE
그리고 FILEGROWTH
명확하게 SQL 서버 데이터 파일에 필요하지 않은 매개 변수는 RAW 파티션에 저장됩니다.
특히 원시 드라이브와 관련된 SQL Server 2000 설명서의 추가 정보 :
원시 파티션 사용
Microsoft® SQL Server ™ 2000은 데이터베이스 파일 작성을위한 원시 파티션 사용을 지원합니다. 원시 파티션은 FAT 및 NTFS와 같은 Microsoft Windows NT® 파일 시스템으로 포맷되지 않은 디스크 파티션입니다. 경우에 따라 원시 파티션에서 생성 된 데이터베이스를 사용하면 NTFS 또는 FAT보다 약간의 성능 향상을 얻을 수 있습니다. 그러나 대부분의 설치에서 선호되는 방법은 NTFS 또는 FAT 파티션에서 작성된 파일을 사용하는 것입니다. 원시 파티션에서 데이터베이스 파일을 작성할 때 데이터베이스를 구성하는 파일의 실제 이름을 지정하지 마십시오. 데이터베이스 파일을 작성해야하는 디스크의 드라이브 문자 만 지정하십시오. Microsoft Windows® 2000 Server를 사용하는 경우 원시 파티션을 가리 키도록 마운트 된 드라이브를 작성할 수 있습니다. 빈 폴더에 로컬 드라이브를 마운트하면 Windows 2000은 드라이브 문자가 아닌 드라이브에 드라이브 경로를 할당합니다. 마운트 된 드라이브에는 드라이브 문자로 인한 26 개 드라이브 제한이 적용되지 않습니다. 따라서 무제한 원시 파티션을 사용할 수 있습니다. 마운트 된 드라이브에서 데이터베이스 파일을 작성할 때 뒤에 백 슬래시 ()로 파일 이름에 대한 드라이브 경로를 종료해야합니다 (예 : E : \ Sample name). 마운트 된 드라이브 작성에 대한 정보는 Windows 2000 Server 문서를 참조하십시오.원시 파티션을 사용할 때 고려해야 할 몇 가지 제한 사항이
있습니다. 각 원시 파티션마다 하나의 데이터베이스 파일 만 작성할 수 있습니다. 원시 파티션에는 파일 시스템이 없으므로 논리 파티션은 단일 데이터베이스 파일로 구성해야합니다.복사, 이동 및 삭제와 같은 표준 파일 시스템 작업은 원시 파티션과 함께 사용할 수 없습니다.
원시 파티션에있는 데이터베이스 파일은 Windows NT 백업 유틸리티를 사용하여 백업 할 수 없습니다. 그러나 SQL Server 데이터베이스 또는 트랜잭션 로그 백업은 여전히 만들 수 있습니다.
원시 파티션의 데이터베이스 파일은 자동으로 확장 될 수 없습니다. 처음에 데이터베이스를 전체 크기로 작성하거나 데이터베이스 파일을 수동으로 확장하십시오. 자세한 내용은 데이터베이스 확장을 참조하십시오.
E :와 같은 문자 파티션 또는 E : \ Sample name \과 같은 마운트 된 드라이브 만 사용할 수 있습니다. 번호가 매겨진 장치는 사용할 수 없습니다.
불량 파티션 교체와 같은 파일 시스템 서비스는 원시 파티션에서 사용할 수 없습니다.
이것은 영감을받은 SQL 서버 6.5에 대한 브렌트 Ozar의 게시물 , 한 원시 파티션을 지원