sql >> データベース >  >> RDS >> Sqlserver

SQL Server(T-SQL)でデータファイルのサイズを縮小する方法

    SQL Serverでは、Transact-SQLを使用する場合、データファイルのサイズを小さくするには、大きくするのとは異なる構文が必要です。 T-SQLを使用してファイルサイズを縮小するには、DBCC SHRINKFILEを使用します コマンドを入力し、データファイルの名前と縮小するサイズを指定します。

    以下は、T-SQLを使用してSQLServerのデータファイルのファイルサイズを縮小する例です。

    基本的な例

    T-SQLを使用してデータファイルのサイズを縮小する基本的な例は次のとおりです。

    USE Solutions;
    GO
    
    DBCC SHRINKFILE (Solutions_dat_2, 5);
    GO

    これはおそらくかなり自明です。まず、データファイルを変更するデータベースに切り替えます。次に、DBCC SHRINKFILEを使用します どのデータファイルと、それを縮小するファイルサイズを指定します。これはMB単位であるため、この例では5MBに削減されます。

    デフォルトのファイルサイズに縮小

    ファイルサイズを指定しない場合、ファイルはデフォルトサイズに縮小されます。デフォルトのサイズは、ファイルの作成時に指定されたサイズです。

    例:

    USE Solutions;
    GO
    
    DBCC SHRINKFILE (Solutions_dat_2);
    GO

    データファイルを切り捨てる

    TRUNCATEONLYを使用して、データファイルを切り捨てることができます。 引数。

    次に例を示します:

    USE Solutions;  
    GO  
    DBCC SHRINKFILE ('Solutions', TRUNCATEONLY);
    GO

    データファイルを空にする

    EMPTYFILEを使用してデータファイルを空にすることもできます 引数。

    例:

    DBCC SHRINKFILE (Solutions2, EMPTYFILE);  
    GO 
    

    これにより、すべてのデータが指定されたファイルから同じファイルグループ内の他のファイルに移行されます。したがって、これがファイルグループ内の唯一のファイルではないことを確認する必要があります(そうしないと、エラーが発生します)。 EmptyFileは、ファイルに新しいデータが追加されないことも保証します。

    ファイルを空にしたら、それが必要な場合はファイルを削除できます。空になったファイルを削除する例を次に示します。

    ALTER DATABASE Solutions  
    REMOVE FILE Solutions2;  
    GO 
    

    そして、次のコマンドを実行することで、削除されたことを確認できます。

    USE Solutions;  
    GO  
    SELECT file_id, name, type_desc, physical_name, size, max_size  
    FROM sys.database_files ;  
    GO
    


    1. PERIOD_DIFF()の例– MySQL

    2. MariaDBの保存データの暗号化に関する考慮事項

    3. テーブルで行サイズを見つける方法

    4. 2つのDjangoアプリ間でモデルを移動する方法(Django 1.7)