Windowsサーバーのハードディスクがいっぱいになったときにクリアするにはどうすればよいですか?

この記事では、Windowsサーバーのメンテナンス時にまとめたディスククリーニング方法を中心に紹介します。お役に立てて光栄です。

1.Cドライブをクリーンアップします。

サーバーを使用する際、基本的にCドライブにソフトウェアをインストールすることはありませんので、長期間使用しているとCドライブがいっぱいになってしまい、空き容量が不足していることがわかります。

1. System32 ログ ファイル

C:\Windows\System32\LogFiles フォルダーを開きます。すべて削除します(使用中のファイルをスキップします)。
ここに画像の説明を挿入

2. IIS ログ ファイル

C:\inetpub\logs\LogFiles フォルダーを開きます。すべて削除します(使用中のファイルをスキップします)。
ここに画像の説明を挿入

3. .Net Frameworkのキャッシュファイル

.Net Framework には多くのキャッシュ ファイルもあります。
ここに画像の説明を挿入
一時 ASP.NET ファイル ファイル (存在する場合) を見つけて、キャッシュ ファイルをクリアします。
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\一時 ASP.NET ファイル
ここに画像の説明を挿入

4.その他の不要なファイルをクリーンアップする

サーバー IIS ログがクリアされたら、次のファイルをクリーンアップします。
C:\WINDOWS\PCHealth\ERRORREP\QSIGNOFF
C:\WINDOWS\PCHealth\ERRORREP\UserDumps
C:\Windows\Temp

5.仮想メモリがCドライブから他のハードドライブに移動されます。

デフォルトでは、サーバーの仮想メモリは C ディスク上にあります。仮想メモリを D ディスクや E ディスクなどの他のディスクに転送すると、C ディスクの容量を増やすことができます。仮想メモリの設定を表示するには、ここをクリックしてください。方法
仮想メモリを他のディスクに設定するには、サーバーを再起動する必要があります。サーバーを再起動すると、システムによって生成された多くのキャッシュ ファイルも閉じることができます。不要なファイルを削除しても、
C ドライブのクリーンアップにはほとんど効果がありません。主なことは、IIS システムをクリーンアップすることです。ログと仮想メモリの設定により、サーバー c のディスク容量が不足しているという問題を解決できます。
最後に、多くのプログラム パスはデフォルトで C ドライブに設定されています。インストール中に、パスは D ドライブまたは E ドライブに変更できます。C ドライブの多くはシステム ファイルであり、掃除が簡単ではありません。

6. .net ランタイムのクリーンアップ

.NET プログラマーで .NET を初めて使用する人はいません。.NET は、Microsoft によって作成されたオープン ソースの開発者プラットフォームであり、さまざまな種類のアプリケーションを生成するために使用されます。
当社の Win サーバー サーバーのプログラムと関数のインターフェイスを例にとると、.NET オペレーティング環境は次のとおりです。多くのディスク容量を占有するため、.net オペレーティング環境は強制的に C ドライブにインストールされます。ここには 2 つのクリーンアップ オプションがあります。
ここに画像の説明を挿入

1. 使用されなくなった .NET バージョンをクリーンアップします。

この図から、.net のバージョンは .NET5.0、.NET Core 3.1、および .NET Core 2.2 であることがわかります。
ここでは、サーバーにデプロイされた Web アプリケーションが関連する .NET バージョンを使用しているかどうかを判断する必要があります。たとえば、会社のすべての Web アプリケーションは初期の .NET Core 2.2 から .NET5.0 および .NET Core 3.1 にアップグレードされているため、この時点で .NET core 2.2 をアンインストールできます。後で .NET5.0 へのアップグレードを引き続き検討できます。これにより、かなりのスペースが確保されます。

2. .NET SDKの代わりに.NET Rumtimeを使用する

.NET SDK は、.NET アプリケーションの開発、コンパイル、デバッグのために Microsoft が提供する SDK で、端的に言えば Visual Studio 用です。一般に、.NET アプリケーションを開発するためにサーバーに VisualStudio をインストールする必要はありません。.NET アプリケーションを展開する場合のみ必要です。
Microsoft の .NET SDK の紹介:
ここに画像の説明を挿入
Microsoft の .NET Rumtime の紹介:

ここに画像の説明を挿入
したがって、.NET SDK をアンインストールし、対応するバージョンの .NET ランタイムに置き換えることができます。Cドライブの容量はかなり小さくなります。

2. その他のソフトウェアのクリーニング

1. 主要なソフトウェアのログをクリーンアップする

1.1 禅の方法:

ZenTao バックアップ ファイル パス: C:\xampp\zentao\tmp。長く使うと容量が増えるので、削除しても大丈夫です。
ここに画像の説明を挿入

1.2 データベース:

1.2.1 SQLサーバー:

1.2.1.1: インデックスのデフラグ

SQL Server は使用中にインデックスの断片化を生成します。インデックスを最適化することでスペースを圧縮できます。

データベース インデックスの断片化を表示するための SQL Server SQL ステートメント:

-- SQL Server查看数据库索引碎片情况
SELECT OBJECT_NAME(ind.OBJECT_ID) AS TableName, 
ind.name AS IndexName, indexstats.index_type_desc AS IndexType, 
indexstats.avg_fragmentation_in_percent 
FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL) indexstats 
INNER JOIN sys.indexes ind  
ON ind.object_id = indexstats.object_id 
AND ind.index_id = indexstats.index_id 
WHERE indexstats.avg_fragmentation_in_percent > 30 
ORDER BY indexstats.avg_fragmentation_in_percent DESC

実行結果:
ここに画像の説明を挿入
インデックスの最適化の 4 つの方法:
1) インデックスを削除して再構築する
2) DROP_EXISTING ステートメントを使用してインデックスを再構築する
3) ALTER INDEX REBUILD ステートメントを使用してインデックスを再構築する
4) ALTER INDEX REORGANIZE を使用してインデックスを再編成する
詳細、参照: SQL Server インデックスのメンテナンス - インデックスの断片化とフィル ファクター
主に、方法 3 の再構築 (インデックスの再構築) と方法 4 の再編成 (インデックスの再編成) を使用します。
インデックスの再構築とは、その名前が示すように、元のインデックスを削除してインデックスを再構築することです。スペース回復の度合いが高く、操作はより危険であり、操作はより長くなります。
インデックスの再編成とは、その名のとおり、元のインデックスを削除するのではなく、元のインデックスに基づいてインデックスを再編成することを意味します。容量はある程度回復しますが、比較的安全で動作速度も速いです。

SQL Server はインデックスの SQL ステートメントを自動的に再編成します。

-- SQL Server重新组织索引
SET NOCOUNT ON
DECLARE @Objectid INT, @Indexid INT,@schemaname VARCHAR(100),@tablename VARCHAR(300),@ixname VARCHAR(500),@avg_fip float,@command VARCHAR(4000)
DECLARE IX_Cursor CURSOR FOR
SELECT  A.object_id,A.index_id,QUOTENAME(SS.NAME) AS schemaname,QUOTENAME(OBJECT_NAME(B.object_id,B.database_id))as tablename ,QUOTENAME(A.name) AS ixname,B.avg_fragmentation_in_percent AS avg_fip FROM sys.indexes A inner join  sys.dm_db_index_physical_stats(DB_ID(),NULL,NULL,NULL,'LIMITED') AS B 
ON A.object_id=B.object_id and A.index_id=B.index_id 
INNER JOIN SYS.OBJECTS OS ON A.object_id=OS.object_id
INNER JOIN sys.schemas SS ON OS.schema_id=SS.schema_id
WHERE B.avg_fragmentation_in_percent>10 and B.page_count>20    AND A.index_id>0 AND A.IS_DISABLED<>1--AND OS.name='book'
ORDER BY tablename,ixname
OPEN IX_Cursor
FETCH NEXT FROM IX_Cursor INTO @Objectid,@Indexid,@schemaname,@tablename,@ixname,@avg_fip
WHILE @@FETCH_STATUS=0
BEGIN
    
    IF @avg_fip<30.0
    SET @command=N'ALTER  INDEX '+@ixname+N' ON '+@schemaname+N'.'+ @tablename+N' REORGANIZE ';
    IF @avg_fip>=30.0 AND @Indexid=1
        BEGIN
        IF EXISTS (SELECT * FROM SYS.columns WHERE OBJECT_ID=@Objectid AND max_length in(-1,16))
        SET @command=N'ALTER  INDEX '+@ixname+N' ON '+@schemaname+N'.'+ @tablename+N' REBUILD ';
        ELSE
        SET @command=N'ALTER  INDEX '+@ixname+N' ON '+@schemaname+N'.'+ @tablename+N' REBUILD '+N' WITH (ONLINE = ON)';
        END
    IF @avg_fip>=30.0 AND @Indexid>1
        BEGIN    
        IF EXISTS (SELECT * FROM  SYS.index_columns IC INNER JOIN SYS.columns CS ON CS.OBJECT_ID=IC.OBJECT_ID AND CS.column_id=IC.column_id                   WHERE  IC.OBJECT_ID=@Objectid AND IC.index_id=@Indexid AND CS.max_length in(-1,16) )
        SET @command=N'ALTER  INDEX '+@ixname+N' ON '+@schemaname+N'.'+ @tablename+N' REBUILD ';
        ELSE
        SET @command=N'ALTER  INDEX '+@ixname+N' ON '+@schemaname+N'.'+ @tablename+N' REBUILD '+N' WITH (ONLINE = ON)';
        END
    --PRINT @command
    EXEC(@command)
 
 FETCH NEXT FROM IX_Cursor INTO @Objectid,@Indexid,@schemaname,@tablename,@ixname,@avg_fip
END

CLOSE IX_Cursor
DEALLOCATE IX_Cursor

実行結果:
ここに画像の説明を挿入
ここに画像の説明を挿入
インデックスを手動で再構築します

ここに画像の説明を挿入
ここに画像の説明を挿入

1.2.2 MySQL:

1.2.2.1 MySQL binlog ログのクリーニング:

MySQL の binlog ログは、データベース内のデータの変更を記録するため、時点と場所に基づいてデータを回復するのに便利ですが、binlog も日々増加し、多くのディスク領域を占有します。いくつかの役に立たないログをクリーンアップするには、正しく安全な binlog メソッドを使用する必要があります。
特定の操作については、記事「mysql で binlog ログを正しくクリーンアップする方法」を参照してください。

1.3: Tencent Computer Manager スマート バックアップ フォルダー qqpcmgr_docpro

通常 Tencent PC Manager を使用している場合は、qqpcmgr_docpro ファイルが生成されます。このディレクトリは、Computer Manager-Document Guardian によって生成され、「Smart Backup」によって生成されたファイルを保存するために使用されます。
ここに画像の説明を挿入
これは Tencent の公式ドキュメントです。
ここに画像の説明を挿入
通常、削除またはサイズの制限には注意してください。

2. 一般的に使用されるハードディスク クリーニング ツール

つづく


要約する

ヒント: 記事の概要は次のとおりです:
例: 上記は今日お話しする内容です。この記事ではパンダの使用法を簡単に紹介するだけであり、パンダはデータを迅速に処理できるようにする多数の関数とメソッドを提供します。そして簡単に。

おすすめ

転載: blog.csdn.net/guigenyi/article/details/128420654