例如,如果数据文件为 10MB,则带有 target_size 为 8 的 DBCC SHRINKFILE 将导致文件最后 2 MB 中所有已用页重新分配到文件前 8 MB 中的任何可用槽中。 DBCC SHRINKFILE 不会将文件收缩到小于存储文件中的数据所需要的大小。例如,如果使用 10MB 数据文件中的7 MB,带有 target_size 为 6 的 DBCC SHRINKFILE ...
DBCC SHRINKFILE (Test1data, EMPTYFILE); GO -- Remove the data file from the database. ALTER DATABASE AdventureWorks2022 REMOVE FILE Test1data; GO E. 使用 WAIT_AT_LOW_PRIORITY 收缩数据库文件以下示例尝试将当前用户数据库中的数据文件的大小收缩到 1 MB。 需要查询 sys.database_files 目录视图以获...
DBCC SHRINKFILE 命令用于收缩当前数据库中的指定数据文件或日志文件大小。其基本语法如下: sql DBCC SHRINKFILE ( { file_name | file_id } { [ ,target_size ] | [ , { EMPTYFILE | NOTRUNCATE | TRUNCATEONLY } ] } ) file_name:要收缩文件的逻辑名称。 file_id:要收缩文件的标识 (ID) 号。
當這種情況發生時,DBCC SHRINKFILE 和 DBCC SHRINKDATABASE 作業在第一個小時裡,會每五分鐘列印一次參考用訊息 (SHRINKDATABASE 是 5202,SHRINKFILE 是 5203) 到 SQL Server 錯誤記錄檔中,之後則每小時列印一次。例如,如果錯誤記錄檔包含下列的錯誤訊息: 複製 DBCC SHRINKFILE for file ID 1 is waiting for the ...
file_id 要收缩的文件的标识 (ID) 号。若要获得文件 ID,请使用FILE_IDEX系统函数,或查询当前数据库中的sys.database_files目录视图。 target_size 用兆字节表示的文件大小(用整数表示)。如果未指定,则 DBCC SHRINKFILE 将文件大小减少到默认文件大小。默认大小为创建文件时指定的大小。
( database_name|database_id|0[, target_percent][, { NOTRUNCATE | TRUNCATEONLY }])[WITH NO_INFOMSGS]DBCCSHRINKFILE ( {file_name|file_id} {[, EMPTYFILE]|[[ , target_size][, { NOTRUNCATE | TRUNCATEONLY }]] } )[WITH NO_INFOMSGS] ...
For example, with a 10-MB data file, a DBCC SHRINKFILE operation with an 8 target_size moves all used pages in the file's last 2 MB into any unallocated pages in the file's first 8 MB. DBCC SHRINKFILE doesn't shrink a file past the needed stored data size. For example, if 7 MB...
For example, with a 10-MB data file, a DBCC SHRINKFILE operation with an 8 target_size moves all used pages in the file's last 2 MB into any unallocated pages in the file's first 8 MB. DBCC SHRINKFILE doesn't shrink a file past the needed stored data size. For example, if 7 MB...
以下示例尝试将当前用户数据库中的数据文件的大小收缩到 1 MB。 需要查询sys.database_files目录视图以获得数据文件的file_id,在本例中为file_id5。 如果在一分钟内无法获取锁,收缩操作将中止。 SQL USEAdventureWorks2022; GOSELECTfile_id,nameFROMsys.database_files; GO DBCC SHRINKFILE (5, 1)WITHWAIT_AT...
DBCC SHRINKDATABASE,用于收缩数据库的数据文件和日志文件, DBCC SHRINKFILE,用于收缩数据库中指定的单个文件,或者清空单个文件。 DBCC SHRINKDATABASE ( database_name | database_id | 0 [ , target_percent ] [ , { NOTRUNCATE | TRUNCATEONLY } ] ...