[SQL SERVER][Maintain]移動ldf檔案

[SQL SERVER][Maintain]移動ldf檔案

第一天開工SQL Server非常不安分,某個資料庫的交易紀錄檔異常肥大造成硬碟無空間,

導致其他資料庫也跟者停擺,因該資料庫有個job會每天刪除某個Table資料(每天資料量約五百萬筆),

雖然該資料庫已設定簡單恢復模式,但交易紀錄檔成長速度還是相當驚人,

所以我先搬移該ldf檔案到新硬碟,同時改寫job內容(用Switch Partition-Partition Table來取代delete),

也順利的解決ldf檔案大小問題,這裡紀錄一下移動交易記錄檔的過程。

 

注意:建議請先備份資料庫在執行該操作。 

查看原有交易紀錄檔路徑

SELECT name, physical_name
FROM sys.master_files
WHERE database_id = DB_ID('mytest');

 

image

1.修改路徑

Alter database mytest modify file
(name = mytest_log, filename = 'F:\sqlldf\mytest_log.ldf')
Go

image  

2.停止SQL Server 的執行個體或伺服器。

3.搬移mytest_log.ldf檔案至新路徑(F:\sqlldf\mytest_log.ldf)。--確定檔案移動成功才可開啟SQL Server 的執行個體或伺服器

4.重新啟動 SQL Server 的執行個體或伺服器。

5.再次查看交易紀錄檔路徑

image

6.查看資料庫狀態

image

這樣就完成了。

 

參考

Moving System Databases