데이터베이스 파일 초기화
이전에 삭제한 파일 중 디스크에 남아 있는 기존 데이터를 덮어쓰려면 데이터 및 로그 파일을 초기화합니다. 다음 작업 중 하나를 수행하면 먼저 데이터 및 로그 파일이 0으로 채워져서 초기화됩니다.
데이터베이스 만들기
기존 데이터베이스에 파일, 로그 또는 데이터 추가
자동 증가 작업을 포함하여 기존 파일의 크기 증가
데이터베이스 또는 파일 그룹 복원
파일을 초기화하면 이러한 작업을 수행하는 데 시간이 더 오래 걸립니다. 그러나 파일에 데이터를 처음 기록할 때 운영 체제에서 파일을 0으로 채울 필요가 없게 됩니다.
즉시 파일 초기화
SQL Server에서는 데이터 파일을 즉시 초기화할 수 있습니다. 이를 통해 위에서 언급한 파일 작업을 신속하게 수행할 수 있습니다. 즉시 파일 초기화는 사용된 디스크 공간을 0으로 채우지 않고 회수합니다. 대신 파일에 새 데이터를 기록할 때 디스크 내용을 덮어씁니다. 로그 파일은 즉시 초기화할 수 없습니다.
[!참고]
즉시 파일 초기화는 Microsoft Windows XP Professional 또는 Windows Server 2003 이상 버전에서만 사용할 수 있습니다.
즉시 파일 초기화는 SQL Server(MSSQLSERVER) 서비스 계정에 SE_MANAGE_VOLUME_NAME이 부여된 경우에만 사용할 수 있습니다. Windows 관리자 그룹의 멤버에게는 이 권한이 있으며 다른 사용자를 볼륨 관리 태스크 실행 보안 정책에 추가하여 이 권한을 부여할 수 있습니다. 사용자 권한 할당 방법은 Windows 설명서를 참조하십시오.
TDE를 사용할 때는 즉시 파일 초기화를 사용할 수 없습니다.
보안 고려 사항
삭제된 디스크 내용은 새 데이터가 파일에 기록될 때만 덮어쓰기 때문에 권한 없는 사용자가 삭제된 내용에 액세스할 수 있습니다. 데이터베이스 파일이 SQL Server 인스턴스에 연결되어 있는 동안에는 파일의 DACL(Discretionary Access Control List)에 의해 이러한 정보 공개 위협이 감소합니다. 이 DACL은 SQL Server 서비스 계정과 로컬 관리자에게만 파일 액세스를 허용합니다. 그러나 파일이 분리되면 SE_MANAGE_VOLUME_NAME 권한이 없는 사용자나 서비스가 이 파일에 액세스할 수 있습니다. 데이터베이스를 백업할 때에도 이와 유사한 위협이 있습니다. 적절한 DACL을 사용하여 백업 파일을 보호하지 않으면 권한 없는 사용자나 서비스가 삭제된 내용을 사용할 수 있습니다.
삭제된 내용의 공개를 방지하려면 다음 중 하나 또는 둘 다를 수행해야 합니다.
분리된 데이터 파일과 백업 파일에 제한적인 DACL이 있는지 항상 확인합니다.
SQL Server 서비스 계정에서 SE_MANAGE_VOLUME_NAME을 취소하여 SQL Server 인스턴스에 대한 즉시 파일 초기화를 해제합니다.
[!참고]
즉시 파일 초기화 해제는 사용자 권한이 취소된 후에 생성되었거나 크기가 증가한 파일에만 영향을 줍니다.