ALTER DATABASE (Transact SQL) 파일 및 파일 그룹 옵션ALTER DATABASE (Transact-SQL) File and Filegroup Options

이 항목은 다음에 적용됩니다.예SQL Server(2008부터)아니요Azure SQL Database아니요Azure SQL Data Warehouse 아니요병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

SQL ServerSQL Server에서 데이터베이스와 연결된 파일 및 파일 그룹을 수정합니다.Modifies the files and filegroups associated with the database in SQL ServerSQL Server. 데이터베이스의 파일과 파일 그룹을 추가 또는 제거하고 데이터베이스 또는 해당 파일과 파일 그룹의 특성을 변경합니다.Adds or removes files and filegroups from a database, and changes the attributes of a database or its files and filegroups. 다른 ALTER DATABASE 옵션을 참조 하세요. ALTER database( Transact SQL ) .For other ALTER DATABASE options, see ALTER DATABASE (Transact-SQL).

항목 링크 아이콘 Transact-SQL 구문 규칙Topic link icon Transact-SQL Syntax Conventions

구문Syntax


ALTER DATABASE database_name   
{  
    <add_or_modify_files>  
  | <add_or_modify_filegroups>  
}  
[;]  

<add_or_modify_files>::=  
{  
    ADD FILE <filespec> [ ,...n ]   
        [ TO FILEGROUP { filegroup_name } ]  
  | ADD LOG FILE <filespec> [ ,...n ]   
  | REMOVE FILE logical_file_name   
  | MODIFY FILE <filespec>  
}  

<filespec>::=   
(  
    NAME = logical_file_name    
    [ , NEWNAME = new_logical_name ]   
    [ , FILENAME = {'os_file_name' | 'filestream_path' | 'memory_optimized_data_path' } ]   
    [ , SIZE = size [ KB | MB | GB | TB ] ]   
    [ , MAXSIZE = { max_size [ KB | MB | GB | TB ] | UNLIMITED } ]   
    [ , FILEGROWTH = growth_increment [ KB | MB | GB | TB| % ] ]   
    [ , OFFLINE ]  
)   

<add_or_modify_filegroups>::=  
{  
    | ADD FILEGROUP filegroup_name   
        [ CONTAINS FILESTREAM | CONTAINS MEMORY_OPTIMIZED_DATA ]  
    | REMOVE FILEGROUP filegroup_name   
    | MODIFY FILEGROUP filegroup_name  
        { <filegroup_updatability_option>  
        | DEFAULT  
        | NAME = new_filegroup_name   
        | { AUTOGROW_SINGLE_FILE | AUTOGROW_ALL_FILES }  
        }  
}  
<filegroup_updatability_option>::=  
{  
    { READONLY | READWRITE }   
    | { READ_ONLY | READ_WRITE }  
}  

인수Arguments

<add_or_modify_files >:: =<add_or_modify_files>::=

추가, 제거 또는 수정할 파일을 지정합니다.Specifies the file to be added, removed, or modified.

database_namedatabase_name
수정할 데이터베이스의 이름입니다.Is the name of the database to be modified.

ADD FILEADD FILE
데이터베이스에 파일을 추가합니다.Adds a file to the database.

파일 그룹으로 { filegroup_name }TO FILEGROUP { filegroup_name }
지정된 파일을 추가할 파일 그룹을 지정합니다.Specifies the filegroup to which to add the specified file. 현재 파일 그룹 및 어떤 파일 그룹은 현재 기본값을 표시 하려면 사용 된 sys.filegroups 카탈로그 뷰.To display the current filegroups and which filegroup is the current default, use the sys.filegroups catalog view.

ADD LOG FILEADD LOG FILE
지정된 데이터베이스에 로그 파일을 추가합니다.Adds a log file be added to the specified database.

REMOVE FILE logical_file_nameREMOVE FILE logical_file_name
SQL ServerSQL Server 인스턴스에서 논리적 파일 설명을 제거하고 물리적 파일을 삭제합니다.Removes the logical file description from an instance of SQL ServerSQL Server and deletes the physical file. 파일이 비어 있어야 제거할 수 있습니다.The file cannot be removed unless it is empty.

logical_file_namelogical_file_name
파일 참조 시 SQL ServerSQL Server에서 사용하는 논리적 이름입니다.Is the logical name used in SQL ServerSQL Server when referencing the file.

경고

FILE_SNAPSHOT 있는 데이터베이스 파일을 제거 합니다. 연결 된 백업이 성공 하지만 데이터베이스 파일을 참조 하는 백업 무효화를 방지 하기 위해 연결 된 모든 스냅숏을 삭제 되지 않습니다.Removing a database file that has FILE_SNAPSHOT backups associated with it will succeed, but any associated snapshots will not be deleted to avoid invalidating the backups referring to the database file. 파일을 자를 수 있지만 FILE_SNAPSHOT 백업의 그대로 유지 하기 위해 물리적으로 삭제 되지 않습니다.The file will be truncated, but will not be physically deleted in order to keep the FILE_SNAPSHOT backups intact. 자세한 내용은 Microsoft Azure Blob 저장소 서비스로 SQL Server 백업 및 복원을 참조하세요.For more information, see SQL Server Backup and Restore with Microsoft Azure Blob Storage Service. 적용 대상: SQL Server 2016SQL Server 2016 통해 현재 버전합니다.Applies to: SQL Server 2016SQL Server 2016 through current version.

MODIFY FILEMODIFY FILE
수정할 파일을 지정합니다.Specifies the file that should be modified. 하나의 <filespec > 속성은 한 번에 변경할 수 있습니다.Only one <filespec> property can be changed at a time. 항상 이름에 <filespec > 수정할 파일을 식별 합니다.NAME must always be specified in the <filespec> to identify the file to be modified. SIZE를 지정할 경우 새 크기가 현재 파일 크기보다 커야 합니다.If SIZE is specified, the new size must be larger than the current file size.

데이터 파일이나 로그 파일의 논리적 이름을 수정하려면 NAME 절에 이름을 바꿀 논리적 파일 이름을 지정하고 NEWNAME 절에 파일의 새 논리적 이름을 지정합니다.To modify the logical name of a data file or log file, specify the logical file name to be renamed in the NAME clause, and specify the new logical name for the file in the NEWNAME clause. 예를 들어For example:

MODIFY FILE ( NAME = logical_file_name, NEWNAME = new_logical_name )   

데이터 파일 또는 로그 파일을 새 위치로 이동하려면 NAME 절에 파일의 현재 논리적 이름을 지정하고 FILENAME 절에 새 경로와 운영 체제 파일 이름을 지정합니다.To move a data file or log file to a new location, specify the current logical file name in the NAME clause and specify the new path and operating system file name in the FILENAME clause. 예를 들어For example:

MODIFY FILE ( NAME = logical_file_name, FILENAME = ' new_path/os_file_name ' )  

전체 텍스트 카탈로그를 이동하는 경우 FILENAME 절에 새 경로만 지정합니다.When you move a full-text catalog, specify only the new path in the FILENAME clause. 운영 체제 파일 이름은 지정하지 마십시오.Do not specify the operating-system file name.

자세한 내용은 참조 데이터베이스 파일 이동합니다.For more information, see Move Database Files.

FILESTREAM 파일 그룹의 경우 NAME을 온라인으로 수정할 수 있습니다.For a FILESTREAM filegroup, NAME can be modified online. FILENAME은 온라인으로 수정할 수 있지만 컨테이너를 물리적으로 재배치하고 서버를 종료한 다음 다시 시작하기 전까지는 변경 내용이 적용되지 않습니다.FILENAME can be modified online; however, the change does not take effect until after the container is physically relocated and the server is shutdown and then restarted.

FILESTREAM 파일을 OFFLINE으로 설정할 수 있습니다.You can set a FILESTREAM file to OFFLINE. FILESTREAM 파일이 오프라인인 경우 부모 파일 그룹이 내부적으로 오프라인으로 표시되므로 해당 파일 그룹 내에서 FILESTREAM 데이터에 대한 모든 액세스가 실패합니다.When a FILESTREAM file is offline, its parent filegroup will be internally marked as offline; therefore, all access to FILESTREAM data within that filegroup will fail.

참고

<add_or_modify_files > 옵션은 포함 된 데이터베이스에서 사용할 수 없습니다.<add_or_modify_files> options are not available in a Contained Database.

<filespec >:: =<filespec>::=

파일 속성을 제어합니다.Controls the file properties.

이름 logical_file_nameNAME logical_file_name
파일의 논리적 이름을 지정합니다.Specifies the logical name of the file.

logical_file_namelogical_file_name
파일 참조 시 SQL ServerSQL Server 인스턴스에서 사용하는 논리적 이름입니다.Is the logical name used in an instance of SQL ServerSQL Server when referencing the file.

NEWNAME new_logical_file_nameNEWNAME new_logical_file_name
파일의 새 논리적 이름을 지정합니다.Specifies a new logical name for the file.

new_logical_file_namenew_logical_file_name
기존 논리적 파일 이름을 바꿀 이름입니다.Is the name to replace the existing logical file name. 이름은 데이터베이스 내에서 고유 하 고 규칙을 따라야 식별자합니다.The name must be unique within the database and comply with the rules for identifiers. 이름에 문자나 유니코드 상수, 일반 식별자, 구분 식별자를 지정할 수 있습니다.The name can be a character or Unicode constant, a regular identifier, or a delimited identifier.

파일 이름 { 'os_file_name' | 'filestream_path ' | 'memory_optimized_data_path'}FILENAME { 'os_file_name' | 'filestream_path' | 'memory_optimized_data_path'}
운영 체제(물리적) 파일 이름을 지정합니다.Specifies the operating system (physical) file name.

' os_file_name '' os_file_name '
표준(행) 파일 그룹의 경우 이것은 파일을 만들 때 운영 체제에서 사용한 경로와 파일 이름입니다.For a standard (ROWS) filegroup, this is the path and file name that is used by the operating system when you create the file. 이 파일은 SQL ServerSQL Server가 설치된 서버에 있어야 합니다.The file must reside on the server on which SQL ServerSQL Server is installed. ALTER DATABASE 문을 실행하기 전에 지정된 경로가 존재해야 합니다.The specified path must exist before executing the ALTER DATABASE statement.

파일에 UNC 경로가 지정되면 SIZE, MAXSIZE 및 FILEGROWTH 매개 변수를 설정할 수 없습니다.SIZE, MAXSIZE, and FILEGROWTH parameters cannot be set when a UNC path is specified for the file.

참고

시스템 데이터베이스는 UNC 공유 디렉터리에 있을 수 없습니다.System databases cannot reside on UNC share directories.

파일이 읽기 전용 보조 파일이 아니거나 데이터베이스가 읽기 전용이 아닌 경우 데이터 파일을 압축 파일 시스템에 저장하지 마십시오.Data files should not be put on compressed file systems unless the files are read-only secondary files, or if the database is read-only. 또한 로그 파일을 압축 파일 시스템에 저장하면 안 됩니다.Log files should never be put on compressed file systems.

파일이 원시 파티션에 os_file_name 기존 원시 파티션의 드라이브 문자만 지정 해야 합니다.If the file is on a raw partition, os_file_name must specify only the drive letter of an existing raw partition. 각 원시 파티션에는 한 개의 파일만 저장할 수 있습니다.Only one file can be put on each raw partition.

' filestream_path '' filestream_path '
FILENAME 파일 그룹의 경우 FILENAME은 FILESTREAM 데이터가 저장될 경로를 참조합니다.For a FILESTREAM filegroup, FILENAME refers to a path where FILESTREAM data will be stored. 따라서 마지막 폴더 바로 위의 경로까지 있어야 하고 마지막 폴더 자체는 있으면 안 됩니다.The path up to the last folder must exist, and the last folder must not exist. 예를 들어 C:\MyFiles\MyFilestreamData 경로를 지정하는 경우 ALTER DATABASE를 실행하기 전에 C:\MyFiles 경로가 있어야 하지만 MyFilestreamData 폴더는 있으면 안 됩니다.For example, if you specify the path C:\MyFiles\MyFilestreamData, C:\MyFiles must exist before you run ALTER DATABASE, but the MyFilestreamData folder must not exist.

SIZE 및 FILEGROWTH 속성은 FILESTREAM 파일 그룹에 적용되지 않습니다.The SIZE and FILEGROWTH properties do not apply to a FILESTREAM filegroup.

' memory_optimized_data_path '' memory_optimized_data_path '
메모리 액세스에 최적화된 파일 그룹에서 FILENAME은 메모리 액세스에 최적화된 데이터가 저장되는 경로를 나타냅니다.For a memory-optimized filegroup, FILENAME refers to a path where memory-optimized data will be stored. 따라서 마지막 폴더 바로 위의 경로까지 있어야 하고 마지막 폴더 자체는 있으면 안 됩니다.The path up to the last folder must exist, and the last folder must not exist. 예를 들어 :\MyFiles\MyData 경로를 지정하는 경우 ALTER DATABASE를 실행하기 전에 C:\MyFiles 경로가 있어야 하지만 MyData 폴더는 있으면 안 됩니다.For example, if you specify the path C:\MyFiles\MyData, C:\MyFiles must exist before you run ALTER DATABASE, but the MyData folder must not exist.

파일 그룹과 파일(<filespec>)은 같은 문으로 만들어야 합니다.The filegroup and file (<filespec>) must be created in the same statement.

SIZE, MAXSIZE 및 FILEGROWTH 속성은 메모리 액세스에 최적화된 파일 그룹에 적용되지 않습니다.The SIZE, MAXSIZE, and FILEGROWTH properties do not apply to a memory-optimized filegroup.

크기 크기SIZE size
파일 크기를 지정합니다.Specifies the file size. SIZE는 FILESTREAM 파일 그룹에 적용되지 않습니다.SIZE does not apply to FILESTREAM filegroups.

크기size
파일의 크기입니다.Is the size of the file.

ADD FILE과 함께 지정 하면 크기 파일의 초기 크기입니다.When specified with ADD FILE, size is the initial size for the file. MODIFY FILE이 함께 지정 하면 크기 파일에 대해 새 크기와 현재 파일 크기 보다 커야 합니다.When specified with MODIFY FILE, size is the new size for the file, and must be larger than the current file size.

크기 주 파일에 대 한 제공 되지 않으면는 SQL ServerSQL Server 에 주 파일의 크기를 사용 하 여는 모델 데이터베이스입니다.When size is not supplied for the primary file, the SQL ServerSQL Server uses the size of the primary file in the model database. 보조 데이터 파일 또는 로그 파일을 지정 하는 경우 하지만 크기 파일을 지정 하지 않으면는 데이터베이스 엔진Database Engine 파일을 사용 하면 1MB입니다.When a secondary data file or log file is specified but size is not specified for the file, the 데이터베이스 엔진Database Engine makes the file 1 MB.

KB, MB, GB 및 TB 접미사를 사용하여 각각 킬로바이트, 메가바이트, 기가바이트, 테라바이트를 지정할 수 있습니다.The KB, MB, GB, and TB suffixes can be used to specify kilobytes, megabytes, gigabytes, or terabytes. 기본값은 MB입니다.The default is MB. 소수점을 포함하지 않은 정수를 지정합니다.Specify a whole number and do not include a decimal. 소수로 된 MB 값을 지정하려면 1024를 곱하여 값을 KB로 변환합니다.To specify a fraction of a megabyte, convert the value to kilobytes by multiplying the number by 1024. 예를 들어 1.5MB인 경우 1536KB(1.5 x 1024 = 1536)를 지정합니다.For example, specify 1536 KB instead of 1.5 MB (1.5 x 1024 = 1536).

MAXSIZE { max_size| 무제한}MAXSIZE { max_size| UNLIMITED }
파일을 확장할 수 있는 최대 파일 크기를 지정합니다.Specifies the maximum file size to which the file can grow.

max_sizemax_size
최대 파일 크기입니다.Is the maximum file size. KB, MB, GB 및 TB 접미사를 사용하여 각각 킬로바이트, 메가바이트, 기가바이트, 테라바이트를 지정할 수 있습니다.The KB, MB, GB, and TB suffixes can be used to specify kilobytes, megabytes, gigabytes, or terabytes. 기본값은 MB입니다.The default is MB. 소수점을 포함하지 않은 정수를 지정합니다.Specify a whole number and do not include a decimal. 경우 max_size 을 지정 하지 않으면 디스크가 꽉 찰 때까지 파일 크기가 늘어납니다.If max_size is not specified, the file size will increase until the disk is full.

UNLIMITEDUNLIMITED
디스크가 꽉 찰 때까지 파일 크기가 증가하도록 지정합니다.Specifies that the file grows until the disk is full. SQL ServerSQL Server에서 무제한 증가로 지정된 로그 파일의 최대 크기는 2TB이고 데이터 파일의 최대 크기는 16TB입니다.In SQL ServerSQL Server, a log file specified with unlimited growth has a maximum size of 2 TB, and a data file has a maximum size of 16 TB. 이 옵션이 FILESTREAM 컨테이너에 지정되면 최대 크기가 없습니다.There is no maximum size when this option is specified for a FILESTREAM container. 디스크가 꽉 찰 때까지 파일이 증가합니다.It continues to grow until the disk is full.

FILEGROWTH growth_incrementFILEGROWTH growth_increment
파일의 자동 증분을 지정합니다.Specifies the automatic growth increment of the file. 파일의 FILEGROWTH 설정은 MAXSIZE 설정을 초과할 수 없습니다.The FILEGROWTH setting for a file cannot exceed the MAXSIZE setting. FILEGROWTH는 FILESTREAM 파일 그룹에 적용되지 않습니다.FILEGROWTH does not apply to FILESTREAM filegroups.

growth_incrementgrowth_increment
공간이 새로 필요할 때마다 파일에 추가되는 공간 크기입니다.Is the amount of space added to the file every time new space is required.

이 값은 MB, KB, GB, TB 또는 %(퍼센트) 단위로 지정할 수 있습니다.The value can be specified in MB, KB, GB, TB, or percent (%). MB, KB 또는 % 접미사를 붙이지 않고 숫자를 지정하면 MB가 기본값이 됩니다.If a number is specified without an MB, KB, or % suffix, the default is MB. %가 지정되면 증분 크기는 파일 크기 증가가 발생하는 시점에서 해당 파일 크기에 대한 특정 비율입니다.When % is specified, the growth increment size is the specified percentage of the size of the file at the time the increment occurs. 지정한 크기는 64KB 단위로 반올림됩니다.The size specified is rounded to the nearest 64 KB.

값 0은 자동 증가를 사용하지 않고 추가 공간을 허용하지 않음을 나타냅니다.A value of 0 indicates that automatic growth is set to off and no additional space is allowed.

FILEGROWTH를 지정 하지 않으면 기본 값은:If FILEGROWTH is not specified, the default values are:

버전Version 기본값Default values
시작 SQL Server 2016SQL Server 2016Beginning SQL Server 2016SQL Server 2016 데이터 64MB입니다.Data 64 MB. 로그 파일 64MB.Log files 64 MB.
시작 SQL Server 2005SQL Server 2005Beginning SQL Server 2005SQL Server 2005 데이터 1MB입니다.Data 1 MB. 로그 파일 10%입니다.Log files 10%.
이전에 SQL Server 2005SQL Server 2005Prior to SQL Server 2005SQL Server 2005 데이터 10%입니다.Data 10%. 로그 파일 10%입니다.Log files 10%.

OFFLINEOFFLINE
파일을 오프라인으로 설정하고 파일 그룹 내의 모든 개체를 액세스할 수 없도록 합니다.Sets the file offline and makes all objects in the filegroup inaccessible.

주의

파일이 손상되고 복원이 가능한 경우에만 이 옵션을 사용하십시오.Use this option only when the file is corrupted and can be restored. OFFLINE으로 설정된 파일은 해당 파일을 백업에서 복원해야만 온라인 상태로 설정할 수 있습니다.A file set to OFFLINE can only be set online by restoring the file from backup. 단일 파일 복원 방법은 RESTORE(Transact-SQL)를 참조하세요.For more information about restoring a single file, see RESTORE (Transact-SQL).

참고

<filespec > 옵션은 포함 된 데이터베이스에서 사용할 수 없습니다.<filespec> options are not available in a Contained Database.

<add_or_modify_filegroups >:: =<add_or_modify_filegroups>::=

데이터베이스의 파일 그룹을 추가, 수정 또는 제거합니다.Add, modify, or remove a filegroup from the database.

파일 그룹 추가 filegroup_nameADD FILEGROUP filegroup_name
데이터베이스에 파일 그룹을 추가합니다.Adds a filegroup to the database.

CONTAINS FILESTREAMCONTAINS FILESTREAM
파일 그룹이 FILESTREAM BLOB(Binary Large Object)를 파일 시스템에 저장하도록 지정합니다.Specifies that the filegroup stores FILESTREAM binary large objects (BLOBs) in the file system.

CONTAINS MEMORY_OPTIMIZED_DATACONTAINS MEMORY_OPTIMIZED_DATA

적용 대상: SQL Server 2014SQL Server 2014 통해 SQL Server 2017SQL Server 2017Applies to: SQL Server 2014SQL Server 2014 through SQL Server 2017SQL Server 2017

파일 그룹이 메모리 액세스에 최적화된 데이터를 파일 시스템에 저장하도록 지정합니다.Specifies that the filegroup stores memory optimized data in the file system. 자세한 내용은 메모리 내 OLTP(메모리 내 최적화)를 참조하세요.For more information, see In-Memory OLTP (In-Memory Optimization). 데이터베이스당 MEMORY_OPTIMIZED_DATA 파일 그룹이 하나만 허용됩니다.Only one MEMORY_OPTIMIZED_DATA filegroup is allowed per database. 메모리 액세스에 최적화된 테이블을 만들기 위해서는 파일 그룹을 비워 둘 수 없습니다.For creating memory optimized tables, the filegroup cannot be empty. 적어도 한 개의 파일이 있어야 합니다.There must be at least one file. filegroup_name 경로를 가리킵니다.filegroup_name refers to a path. 따라서 마지막 폴더 바로 위의 경로까지 있어야 하고 마지막 폴더 자체는 있으면 안 됩니다.The path up to the last folder must exist, and the last folder must not exist.

다음 예에서는 xtp_db 데이터베이스에 추가된 파일 그룹을 만들고 파일을 이 파일 그룹에 추가합니다.The following example creates a filegroup that is added to a database named xtp_db, and adds a file to the filegroup. 파일 그룹은 memory_optimized 데이터를 저장합니다.The filegroup stores memory_optimized data.

ALTER DATABASE xtp_db ADD FILEGROUP xtp_fg CONTAINS MEMORY_OPTIMIZED_DATA;  
GO  
ALTER DATABASE xtp_db ADD FILE (NAME='xtp_mod', FILENAME='d:\data\xtp_mod') TO FILEGROUP xtp_fg;  

파일 그룹 제거 filegroup_nameREMOVE FILEGROUP filegroup_name
데이터베이스에서 파일 그룹을 제거합니다.Removes a filegroup from the database. 파일 그룹은 비어 있어야 제거할 수 있습니다.The filegroup cannot be removed unless it is empty. 먼저 파일 그룹에서 모든 파일을 제거합니다.Remove all files from the filegroup first. 자세한 내용은 참조 하십시오. "파일 제거 logical_file_name,"이이 항목의에서 앞부분입니다.For more information, see "REMOVE FILE logical_file_name," earlier in this topic.

참고

FILESTREAM 가비지 수집기가 FILESTREAM 컨테이너에서 모든 파일을 제거하지 않은 경우 FILESTREAM 컨테이너를 제거하기 위한 ALTER DATABASE REMOVE FILE 작업이 실패하고 오류를 반환합니다.Unless the FILESTREAM Garbage Collector has removed all the files from a FILESTREAM container, the ALTER DATABASE REMOVE FILE operation to remove a FILESTREAM container will fail and return an error. 이 항목의 뒷부분에 나오는 주의에서 "FILESTREAM 컨테이너 제거" 섹션을 참조하십시오.See the "Remove FILESTREAM Container" section in Remarks later in this topic.

파일 그룹 수정 filegroup_name { <filegroup_updatability_option > | 기본 | 이름 = new_filegroup_name }를 READ_ONLY 또는 READ_WRITE를 만드는 파일 그룹의 데이터베이스에 대 한 기본 파일 그룹의 상태를 설정 하 여 파일 그룹을 수정 하거나 파일 그룹 이름을 변경 합니다.MODIFY FILEGROUP filegroup_name { <filegroup_updatability_option> | DEFAULT | NAME =new_filegroup_name } Modifies the filegroup by setting the status to READ_ONLY or READ_WRITE, making the filegroup the default filegroup for the database, or changing the filegroup name.

<filegroup_updatability_option ><filegroup_updatability_option>
파일 그룹에 대한 읽기 전용 또는 읽기/쓰기 속성을 설정합니다.Sets the read-only or read/write property to the filegroup.

DEFAULTDEFAULT
기본 데이터베이스 파일 그룹을 변경 filegroup_name합니다.Changes the default database filegroup to filegroup_name. 데이터베이스에서 한 개의 파일 그룹만 기본 파일 그룹이 될 수 있습니다.Only one filegroup in the database can be the default filegroup. 자세한 내용은 Database Files and Filegroups을 참조하세요.For more information, see Database Files and Filegroups.

이름 = new_filegroup_nameNAME = new_filegroup_name
에 파일 그룹 이름을 변경 하는 new_filegroup_name합니다.Changes the filegroup name to the new_filegroup_name.

AUTOGROW_SINGLE_FILEAUTOGROW_SINGLE_FILE
적용 대상: SQL ServerSQL Server ( SQL Server 2016SQL Server 2016 통해 현재 버전)Applies to: SQL ServerSQL Server ( SQL Server 2016SQL Server 2016 through current version)

파일 그룹의 파일 자동 증가 임계값을 충족할 경우 해당 파일에만 증가 합니다.When a file in the filegroup meets the autogrow threshold, only that file grows. 기본값입니다.This is the default.

AUTOGROW_ALL_FILESAUTOGROW_ALL_FILES

적용 대상: SQL ServerSQL Server ( SQL Server 2016SQL Server 2016 통해 현재 버전)Applies to: SQL ServerSQL Server ( SQL Server 2016SQL Server 2016 through current version)

파일 그룹의 파일 자동 증가 임계값을 충족할 때 파일 그룹의 모든 파일이 증가 합니다.When a file in the filegroup meets the autogrow threshold, all files in the filegroup grow.

<filegroup_updatability_option >:: =<filegroup_updatability_option>::=

파일 그룹에 대한 읽기 전용 또는 읽기/쓰기 속성을 설정합니다.Sets the read-only or read/write property to the filegroup.

READ_ONLY | READONLYREAD_ONLY | READONLY
파일 그룹을 읽기 전용으로 지정합니다.Specifies the filegroup is read-only. 해당 파일 그룹의 개체를 업데이트할 수 없습니다.Updates to objects in it are not allowed. 주 파일 그룹은 읽기 전용으로 만들 수 없습니다.The primary filegroup cannot be made read-only. 이 상태를 변경하려면 데이터베이스에 대해 배타적 액세스 권한이 있어야 합니다.To change this state, you must have exclusive access to the database. 자세한 내용은 SINGLE_USER 절을 참조하십시오.For more information, see the SINGLE_USER clause.

읽기 전용 데이터베이스는 데이터 수정을 허용하지 않기 때문에 다음과 같은 특성을 포함합니다.Because a read-only database does not allow data modifications:

  • 시스템 시작 시 자동 복원을 하지 않습니다.Automatic recovery is skipped at system startup.

  • 데이터베이스 축소가 불가능합니다.Shrinking the database is not possible.

  • 읽기 전용 데이터베이스에서는 잠금이 발생하지 않습니다.No locking occurs in read-only databases. 따라서 쿼리 성능은 더 향상될 수 있습니다.This can cause faster query performance.

참고

읽기 전용의 이후 버전에서 제거 됩니다 키워드 MicrosoftMicrosoft SQL ServerSQL Server합니다.The keyword READONLY will be removed in a future version of MicrosoftMicrosoft SQL ServerSQL Server. 향후 개발 작업에서는 READONLY를 사용하지 않도록 하고 현재 READONLY를 사용하는 응용 프로그램은 수정하십시오.Avoid using READONLY in new development work, and plan to modify applications that currently use READONLY. 대신 READ_ONLY를 사용하십시오.Use READ_ONLY instead.

READ_WRITE | READWRITEREAD_WRITE | READWRITE
파일 그룹을 READ_WRITE로 지정합니다.Specifies the group is READ_WRITE. 해당 파일 그룹의 개체를 업데이트할 수 있습니다.Updates are enabled for the objects in the filegroup. 이 상태를 변경하려면 데이터베이스에 대해 배타적 액세스 권한이 있어야 합니다.To change this state, you must have exclusive access to the database. 자세한 내용은 SINGLE_USER 절을 참조하십시오.For more information, see the SINGLE_USER clause.

참고

이후 버전에서 제거할 READWRITE 키워드 MicrosoftMicrosoft SQL ServerSQL Server합니다.The keyword READWRITE will be removed in a future version of MicrosoftMicrosoft SQL ServerSQL Server. 향후 개발 작업에서는 READWRITE를 사용하지 않도록 하고 현재 READWRITE를 사용하는 응용 프로그램은 수정하십시오.Avoid using READWRITE in new development work, and plan to modify applications that currently use READWRITE. 대신 READ_WRITE를 사용하십시오.Use READ_WRITE instead.

검사 하 여 이러한 옵션의 상태를 확인할 수 있습니다는 is_read_only 열에는 sys.databases 카탈로그 뷰 또는 Updateability 의 속성은 DATABASEPROPERTYEX 함수입니다.The status of these options can be determined by examining the is_read_only column in the sys.databases catalog view or the Updateability property of the DATABASEPROPERTYEX function.

주의Remarks

사용 하 여 데이터베이스의 크기를 줄이려면 DBCC SHRINKDATABASE합니다.To decrease the size of a database, use DBCC SHRINKDATABASE.

BACKUP 문이 실행 중인 동안에는 파일을 추가 또는 제거할 수 없습니다.You cannot add or remove a file while a BACKUP statement is running.

각 데이터베이스에 최대 32,767개의 파일과 32,767개의 파일 그룹을 지정할 수 있습니다.A maximum of 32,767 files and 32,767 filegroups can be specified for each database.

SQL Server 2005SQL Server 2005 이상에서 데이터베이스 파일의 상태(예: 온라인 또는 오프라인)는 데이터베이스의 상태와는 별도로 유지 관리됩니다.In SQL Server 2005SQL Server 2005 or later, the state of a database file (for example, online or offline), is maintained independently from the state of the database. 자세한 내용은 참조 파일 상태합니다.For more information, see File States. 전체 파일 그룹의 가용성은 파일 그룹 내 파일의 상태에 따라 결정됩니다.The state of the files within a filegroup determines the availability of the whole filegroup. 파일 그룹을 사용하려면 파일 그룹 내의 모든 파일이 온라인 상태여야 합니다.For a filegroup to be available, all files within the filegroup must be online. 파일 그룹이 오프라인 상태인 경우 SQL 문을 사용한 파일 그룹 액세스 시도는 오류가 발생하며 실패하게 됩니다.If a filegroup is offline, any try to access the filegroup by an SQL statement will fail with an error. SELECT 문에 대한 쿼리 계획을 작성할 때 쿼리 최적화 프로그램은 오프라인 파일 그룹에 있는 비클러스터형 인덱스와 인덱싱된 뷰는 피함으로써When you build query plans for SELECT statements, the query optimizer avoids nonclustered indexes and indexed views that reside in offline filegroups. 이러한 문이 성공하도록 합니다.This enables these statements to succeed. 그러나 오프라인 파일 그룹에 대상 테이블의 힙이나 클러스터형 인덱스가 있는 경우 SELECT 문은 실패합니다.However, if the offline filegroup contains the heap or clustered index of the target table, the SELECT statements fail. 오프라인 파일 그룹의 인덱스를 사용하여 테이블을 수정하는 INSERT, UPDATE 또는 DELETE 문도 실패합니다.Additionally, any INSERT, UPDATE, or DELETE statement that modifies a table with any index in an offline filegroup will fail.

파일 이동Moving Files

FILENAME에 새 위치를 지정하여 시스템 또는 사용자 정의 데이터 및 로그 파일을 이동할 수 있습니다.You can move system or user-defined data and log files by specifying the new location in FILENAME. 이는 다음과 같은 시나리오에서 유용합니다.This may be useful in the following scenarios:

  • 오류 복구.Failure recovery. 예를 들어 데이터베이스가 주의 대상 모드이거나 하드웨어 오류로 인해 종료된 경우입니다.For example, the database is in suspect mode or shutdown caused by hardware failure

  • 계획된 재배치Planned relocation

  • 예약된 디스크 유지 관리를 위한 재배치Relocation for scheduled disk maintenance

    자세한 내용은 참조 데이터베이스 파일 이동합니다.For more information, see Move Database Files.

파일 초기화Initializing Files

기본적으로 데이터 및 로그 파일은 사용자가 다음 작업 중 하나를 수행할 때 0으로 채워져 초기화됩니다.By default, data and log files are initialized by filling the files with zeros when you perform one of the following operations:

  • 데이터베이스 만들기Create a database

  • 기존 데이터베이스에 파일 추가Add files to an existing database

  • 기존 파일의 크기 증가Increase the size of an existing file

  • 데이터베이스 또는 파일 그룹 복원Restore a database or filegroup

    데이터 파일을 즉시 초기화할 수 있습니다.Data files can be initialized instantaneously. 이를 통해 이와 같은 파일 작업을 신속히 실행할 수 있습니다.This enables for fast execution of these file operations.

FILESTREAM 컨테이너 제거Removing a FILESTREAM Container

"DBCC SHRINKFILE" 작업을 사용하여 FILESTREAM 컨테이너를 비웠어도 데이터베이스에서 여러 가지 시스템 유지 관리상의 이유로 삭제된 파일에 대한 참조를 보존해야 하는 경우가 있습니다.Even though FILESTREAM container may have been emptied using the “DBCC SHRINKFILE” operation, the database may still need to maintain references to the deleted files for various system maintenance reasons. sp_filestream_force_garbage_collection( Transact SQL ) 안전 하 게 되었을 때 이러한 파일을 제거 하려면 FILESTREAM 가비지 수집기가 실행 됩니다.sp_filestream_force_garbage_collection (Transact-SQL) will run the FILESTREAM Garbage Collector to remove these files when it is safe to do so. FILESTREAM 가비지 수집기가 FILESTREAM 컨테이너에서 모든 파일을 제거하지 않은 경우 FILESTREAM 컨테이너를 제거하기 위한 ALTER DATABASEREMOVE FILE 작업이 실패하고 오류를 반환합니다.Unless the FILESTREAM Garbage Collector has removed all the files from a FILESTREAM container, the ALTER DATABASEREMOVE FILE operation will fail to remove a FILESTREAM container and will return an error. 다음 프로세스를 사용하여 FILESTREAM 컨테이너를 제거하는 것이 좋습니다.The following process is recommended to remove a FILESTREAM container.

  1. 실행 DBCC shrinkfile( Transact SQL ) 이 컨테이너의 활성 내용을 다른 컨테이너로 이동 하려면 EMPTYFILE 옵션을 사용 합니다.Run DBCC SHRINKFILE (Transact-SQL) with the EMPTYFILE option to move the active contents of this container to other containers.

  2. FULL 또는 BULK_LOGGED 복구 모델에서 로그 백업이 수행되었는지 확인합니다.Ensure that Log backups have been taken, in the FULL or BULK_LOGGED recovery model.

  3. 복제 로그 판독기 작업이 실행되었는지 확인합니다(해당되는 경우).Ensure that the replication log reader job has been run, if relevant.

  4. 실행 sp_filestream_force_garbage_collection ( Transact SQL ) 이 컨테이너에 더 이상 필요 없는 모든 파일을 삭제 하 여 가비지 수집기를 합니다.Run sp_filestream_force_garbage_collection (Transact-SQL) to force the garbage collector to delete any files that are no longer needed in this container.

  5. ALTER DATABASE를 REMOVE FILE 옵션과 함께 실행하여 이 컨테이너를 제거합니다.Execute ALTER DATABASE with the REMOVE FILE option to remove this container.

  6. 2-4단계를 두 번 이상 반복하여 가비지 수집을 완료합니다.Repeat steps 2 through 4 once more to complete the garbage collection.

  7. ALTER Database...REMOVE FILE을 사용하여 이 컨테이너를 제거합니다.Use ALTER Database...REMOVE FILE to remove this container.

Examples

1.A. 데이터베이스에 파일 추가Adding a file to a database

다음 예에서는 AdventureWorks2012AdventureWorks2012 데이터베이스에 5MB 데이터 파일을 추가합니다.The following example adds a 5-MB data file to the AdventureWorks2012AdventureWorks2012 database.

USE master;  
GO  
ALTER DATABASE AdventureWorks2012   
ADD FILE   
(  
    NAME = Test1dat2,  
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\t1dat2.ndf',  
    SIZE = 5MB,  
    MAXSIZE = 100MB,  
    FILEGROWTH = 5MB  
);  
GO  

2.B. 데이터베이스에 두 개의 파일이 포함된 파일 그룹 추가Adding a filegroup with two files to a database

다음 예에서는 AdventureWorks2012AdventureWorks2012 데이터베이스에 Test1FG1 파일 그룹을 만들고 이 파일 그룹에 두 개의 5MB 파일을 추가합니다.The following example creates the filegroup Test1FG1 in the AdventureWorks2012AdventureWorks2012 database and adds two 5-MB files to the filegroup.

USE master  
GO  
ALTER DATABASE AdventureWorks2012  
ADD FILEGROUP Test1FG1;  
GO  
ALTER DATABASE AdventureWorks2012   
ADD FILE   
(  
    NAME = test1dat3,  
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\t1dat3.ndf',  
    SIZE = 5MB,  
    MAXSIZE = 100MB,  
    FILEGROWTH = 5MB  
),  
(  
    NAME = test1dat4,  
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\t1dat4.ndf',  
    SIZE = 5MB,  
    MAXSIZE = 100MB,  
    FILEGROWTH = 5MB  
)  
TO FILEGROUP Test1FG1;  
GO  

3.C. 데이터베이스에 두 개의 로그 파일 추가Adding two log files to a database

다음 예에서는 AdventureWorks2012AdventureWorks2012 데이터베이스에 두 개의 5MB 로그 파일을 추가합니다.The following example adds two 5-MB log files to the AdventureWorks2012AdventureWorks2012 database.

USE master;  
GO  
ALTER DATABASE AdventureWorks2012   
ADD LOG FILE   
(  
    NAME = test1log2,  
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\test2log.ldf',  
    SIZE = 5MB,  
    MAXSIZE = 100MB,  
    FILEGROWTH = 5MB  
),  
(  
    NAME = test1log3,  
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\test3log.ldf',  
    SIZE = 5MB,  
    MAXSIZE = 100MB,  
    FILEGROWTH = 5MB  
);  
GO  

4.D. 데이터베이스에서 파일 제거Removing a file from a database

다음 예에서는 2번 예에서 추가한 파일 중 하나를 제거합니다.The following example removes one of the files added in example B.

USE master;  
GO  
ALTER DATABASE AdventureWorks2012  
REMOVE FILE test1dat4;  
GO  

5.E. 파일 수정Modifying a file

다음 예에서는 2번 예에서 추가한 파일 중 하나의 크기를 늘립니다.The following example increases the size of one of the files added in example B.
ALTER DATABASE MODIFY FILE 명령 사용 하 여만 파일 크기를 더 크게 만들 수, 되므로 더 작은 파일 크기를 확인 해야 하는 경우 DBCC SHRINKFILE을 사용 해야 합니다.The ALTER DATABASE with MODIFY FILE command can only make a file size bigger, so if you need to make the file size smaller you need to use DBCC SHRINKFILE.

USE master;  
GO

ALTER DATABASE AdventureWorks2012   
MODIFY FILE  
(NAME = test1dat3,  
SIZE = 200MB);  
GO  

이 예제에서는 100 MB을 데이터 파일의 크기를 축소 하 고이 금액에 크기를 지정 합니다.This example shrinks the size of a data file to 100 MB, and then specifies the size at that amount.

USE AdventureWorks2012;
GO

DBCC SHRINKFILE (AdventureWorks2012_data, 100);
GO

USE master;  
GO

ALTER DATABASE AdventureWorks2012   
MODIFY FILE  
(NAME = test1dat3,  
SIZE = 200MB);  
GO

6.F. 파일을 새 위치로 이동Moving a file to a new location

다음 예에서는 1번 예에서 만든 Test1dat2 파일을 새 디렉터리로 이동합니다.The following example moves the Test1dat2 file created in example A to a new directory.

참고

이 예를 실행하기 전에 해당 파일을 새 디렉터리로 물리적으로 이동해야 합니다.You must physically move the file to the new directory before running this example. 그 다음 SQL ServerSQL Server 인스턴스를 중지한 후 다시 시작하거나 AdventureWorks2012AdventureWorks2012 데이터베이스를 OFFLINE으로 설정한 후 다시 ONLINE으로 되돌려 변경 사항을 적용합니다.Afterward, stop and start the instance of SQL ServerSQL Server or take the AdventureWorks2012AdventureWorks2012 database OFFLINE and then ONLINE to implement the change.

USE master;  
GO  
ALTER DATABASE AdventureWorks2012  
MODIFY FILE  
(  
    NAME = Test1dat2,  
    FILENAME = N'c:\t1dat2.ndf'  
);  
GO  

7.G. tempdb를 새 위치로 이동Moving tempdb to a new location

다음 예에서는 tempdb를 디스크의 현재 위치에서 다른 디스크 위치로 이동합니다.The following example moves tempdb from its current location on the disk to another disk location. MSSQLSERVER 서비스를 시작할 때마다 tempdb가 다시 생성되므로 데이터와 로그 파일을 물리적으로 이동할 필요는 없습니다.Because tempdb is re-created each time the MSSQLSERVER service is started, you do not have to physically move the data and log files. 3단계에서 서비스를 다시 시작할 때 파일이 생성됩니다.The files are created when the service is restarted in step 3. 서비스를 다시 시작하기 전까지는 tempdb가 기존의 위치에서 작업을 수행합니다.Until the service is restarted, tempdb continues to function in its existing location.

  1. tempdb 데이터베이스의 논리적 파일 이름 및 디스크에서 현재 위치를 결정합니다.Determine the logical file names of the tempdb database and their current location on disk.

    SELECT name, physical_name  
    FROM sys.master_files  
    WHERE database_id = DB_ID('tempdb');  
    GO  
    
  2. ALTER DATABASE를 사용하여 각 파일의 위치를 변경합니다.Change the location of each file by using ALTER DATABASE.

    USE master;  
    GO  
    ALTER DATABASE tempdb   
    MODIFY FILE (NAME = tempdev, FILENAME = 'E:\SQLData\tempdb.mdf');  
    GO  
    ALTER DATABASE  tempdb   
    MODIFY FILE (NAME = templog, FILENAME = 'E:\SQLData\templog.ldf');  
    GO  
    
  3. SQL ServerSQL Server인스턴스를 중지한 후 다시 시작합니다.Stop and restart the instance of SQL ServerSQL Server.

  4. 파일 변경 내용을 확인합니다.Verify the file change.

    SELECT name, physical_name  
    FROM sys.master_files  
    WHERE database_id = DB_ID('tempdb');  
    
  5. tempdb.mdf 및 templog.ldf 파일을 원래 위치에서 삭제합니다.Delete the tempdb.mdf and templog.ldf files from their original location.

8.H. 기본 파일 그룹 설정Making a filegroup the default

다음 예제에서는 Test1FG1 기본 파일 그룹 B의 예제에서 만든 파일 그룹입니다.The following example makes the Test1FG1 filegroup created in example B the default filegroup. 그 다음 PRIMARY 파일 그룹을 기본 파일 그룹으로 다시 설정합니다.Then, the default filegroup is reset to the PRIMARY filegroup. PRIMARY는 대괄호 또는 따옴표로 구분해야 합니다.Note that PRIMARY must be delimited by brackets or quotation marks.

USE master;  
GO  
ALTER DATABASE AdventureWorks2012   
MODIFY FILEGROUP Test1FG1 DEFAULT;  
GO  
ALTER DATABASE AdventureWorks2012   
MODIFY FILEGROUP [PRIMARY] DEFAULT;  
GO  

9.I. ALTER DATABASE를 사용하여 파일 그룹 추가Adding a Filegroup Using ALTER DATABASE

다음 예에서는 FILEGROUP 절을 포함하는 FILESTREAMFileStreamPhotoDB 데이터베이스에 추가합니다.The following example adds a FILEGROUP that contains the FILESTREAM clause to the FileStreamPhotoDB database.

--Create and add a FILEGROUP that CONTAINS the FILESTREAM clause to  
--the FileStreamPhotoDB database.  
ALTER DATABASE FileStreamPhotoDB  
ADD FILEGROUP TodaysPhotoShoot  
CONTAINS FILESTREAM;  
GO  

--Add a file for storing database photos to FILEGROUP   
ALTER DATABASE FileStreamPhotoDB  
ADD FILE  
(  
    NAME= 'PhotoShoot1',  
    FILENAME = 'C:\Users\Administrator\Pictures\TodaysPhotoShoot.ndf'  
)  
TO FILEGROUP TodaysPhotoShoot;  
GO  

10.J. 파일 그룹을 변경 하는 파일 그룹의 파일이 자동 증가 임계값을 충족할 때에서는 파일 그룹의 모든 파일이 증가Change filegroup so that when a file in the filegroup meets the autogrow threshold, all files in the filegroup grow

다음 예제에서는 필요한 ALTER DATABASE 으로 읽기 / 쓰기 파일 그룹을 수정 하는 문을 AUTOGROW_ALL_FILES 설정 합니다.The following example generates the required ALTER DATABASE statements to modify read-write filegroups with the AUTOGROW_ALL_FILES setting.

--Generate ALTER DATABASE ... MODIFY FILEGROUP statements  
--so that all read-write filegroups grow at the same time.  
SET NOCOUNT ON;

DROP TABLE IF EXISTS #tmpdbs
CREATE TABLE #tmpdbs (id int IDENTITY(1,1), [dbid] int, [dbname] sysname, isdone bit);

DROP TABLE IF EXISTS #tmpfgs
CREATE TABLE #tmpfgs (id int IDENTITY(1,1), [dbid] int, [dbname] sysname, fgname sysname, isdone bit);

INSERT INTO #tmpdbs ([dbid], [dbname], [isdone])
SELECT database_id, name, 0 FROM master.sys.databases (NOLOCK) WHERE is_read_only = 0 AND state = 0;

DECLARE @dbid int, @query VARCHAR(1000), @dbname sysname, @fgname sysname

WHILE (SELECT COUNT(id) FROM #tmpdbs WHERE isdone = 0) > 0
BEGIN
    SELECT TOP 1 @dbname = [dbname], @dbid = [dbid] FROM #tmpdbs WHERE isdone = 0

    SET @query = 'SELECT ' + CAST(@dbid AS NVARCHAR) + ', ''' + @dbname + ''', [name], 0 FROM [' + @dbname + '].sys.filegroups WHERE [type] = ''FG'' AND is_read_only = 0;'
    INSERT INTO #tmpfgs
    EXEC (@query)

    UPDATE #tmpdbs
    SET isdone = 1
    WHERE [dbid] = @dbid
END;

IF (SELECT COUNT(ID) FROM #tmpfgs) > 0
BEGIN
    WHILE (SELECT COUNT(id) FROM #tmpfgs WHERE isdone = 0) > 0
    BEGIN
        SELECT TOP 1 @dbname = [dbname], @dbid = [dbid], @fgname = fgname FROM #tmpfgs WHERE isdone = 0

        SET @query = 'ALTER DATABASE [' + @dbname + '] MODIFY FILEGROUP [' + @fgname + '] AUTOGROW_ALL_FILES;'

        PRINT @query

        UPDATE #tmpfgs
        SET isdone = 1
        WHERE [dbid] = @dbid AND fgname = @fgname
    END
END; 
GO  

관련 항목:See Also

CREATE DATABASE(SQL Server Transact-SQL) CREATE DATABASE (SQL Server Transact-SQL)
DATABASEPROPERTYEX(Transact-SQL) DATABASEPROPERTYEX (Transact-SQL)
DROP DATABASE(Transact-SQL) DROP DATABASE (Transact-SQL)
sp_spaceused(Transact-SQL) sp_spaceused (Transact-SQL)
sys.databases(Transact-SQL) sys.databases (Transact-SQL)
sys.database_files(Transact-SQL) sys.database_files (Transact-SQL)
sys.data_spaces ( Transact SQL ) sys.data_spaces (Transact-SQL)
sys.filegroups ( Transact SQL ) sys.filegroups (Transact-SQL)
sys.master_files( Transact SQL ) sys.master_files (Transact-SQL)
Binary Large Object (Blob) 데이터 (SQL Server) Binary Large Object (Blob) Data (SQL Server)
DBCC SHRINKFILE(Transact-SQL) DBCC SHRINKFILE (Transact-SQL)
sp_filestream_force_garbage_collection(Transact-SQL)sp_filestream_force_garbage_collection (Transact-SQL)