Sqlserver filestream 引起文件數劇增

若是不使用checkpoint,文件數會劇增 sql

參考:https://docs.microsoft.com/zh-cn/sql/relational-databases/logs/database-checkpoints-sql-server?view=sql-server-2017 spa

         

文件尚未計算完,已經上億了 code

       

       

在開發機上,先清空數據,確保文件流的目錄下沒有文件 server

@@@code

TRUNCATE TABLE dbo.Position blog

CHECKPOINT 開發

     

@@#get

而後嘗試插入數據 it

@@@code

INSERT dbo.Position io

( class

ID,

HourBand,

Data

)

VALUES

(NEWID(), 1, sharedb.[dbo].[f_gbk2Bin]('aa', 2));

@@#

只有一個文件,很正常

修改數據,但實際內容並未修改,

@@@code

UPDATE dbo.Position SET Data=sharedb.[dbo].[f_gbk2Bin]('aa',2)

@@#

 

多出了一個文件

再進行一次無效插入

@@@code

INSERT dbo.Position

(

ID,

HourBand,

Data

)

VALUES

(NEWID(), 1, sharedb.[dbo].[f_gbk2Bin]('aa', 2));

@@#

結果又多了一個文件

文件以下:

         

換一種思路

先重複三次更新,出現4個文件,再執行一次checkpoint,大約10秒後多餘文件消失

相關文章
相關標籤/搜索