📜  在 sql server 中收缩数据库文件 - SQL (1)

📅  最后修改于: 2023-12-03 15:07:49.506000             🧑  作者: Mango

在 SQL Server 中收缩数据库文件

在 SQL Server 中,数据库文件可能会因为删除数据等操作,导致文件变大,这时我们可以使用收缩数据库文件的方式来减小文件大小。

收缩数据文件
使用 SSMS 收缩数据文件

使用 SQL Server Management Studio(SSMS) 收缩数据文件非常简单:

  1. 打开 SSMS 并连接目标实例。
  2. 选择需要收缩的数据库并右键单击,选择“任务” -> “收缩” -> “文件”,将打开“收缩文件”对话框。
  3. 在“文件类型”下拉列表中选择“数据文件”,选择要收缩的数据文件并指定收缩方式(简单或完整)。注意:简单收缩可能不会减小数据文件的大小比较显著,而完整收缩可能会比较耗时。
  4. 点击“OK”开始收缩操作。
使用 T-SQL 收缩数据文件

使用 T-SQL 收缩数据文件的步骤如下:

  1. 打开 SQL Server Management Studio 并连接目标实例。

  2. 执行以下 T-SQL 命令:

    USE [database_name];
    DBCC SHRINKFILE (logical_file_name, target_size);
    

    database_name 为目标数据库名称,logical_file_name 为要收缩的文件的逻辑名称。target_size 为要收缩到的目标大小,单位为 MB。

    例如,要将 datafile1 收缩到 100 MB,可以执行以下命令:

    USE [testdb];
    DBCC SHRINKFILE (datafile1, 100);
    
收缩日志文件
使用 SSMS 收缩日志文件

使用 SQL Server Management Studio 收缩日志文件的步骤如下:

  1. 打开 SSMS 并连接目标实例。
  2. 选择需要收缩的数据库并右键单击,选择“任务” -> “收缩” -> “文件”,将打开“收缩文件”对话框。
  3. 在“文件类型”下拉列表中选择“日志文件”,选择要收缩的日志文件并指定收缩方式(简单或完整)。
  4. 如果要截断日志,勾选“释放未使用空间”选项。
  5. 点击“OK”开始收缩操作。
使用 T-SQL 收缩日志文件

使用 T-SQL 收缩日志文件的步骤如下:

  1. 打开 SQL Server Management Studio 并连接目标实例。

  2. 执行以下 T-SQL 命令:

    USE [database_name];
    DBCC SHRINKFILE (logical_file_name, target_size);
    

    database_name 为目标数据库名称,logical_file_name 为要收缩的文件的逻辑名称。为了收缩日志文件,需要将 logical_file_name 设置为日志文件的逻辑名称,例如 database_name_log

    target_size 为要收缩到的目标大小,单位为 MB。

    例如,要将 testdb_log 收缩到 1 MB,可以执行以下命令:

    USE [testdb];
    DBCC SHRINKFILE (testdb_log, 1);