我正在使用 DETACH 將資料庫從 SQL 2000 複製到另一台伺服器上的 2008 實例,將 Windows 檔案複製到 2008 伺服器,然後最後附加。我來到一個資料庫,其中日誌檔案位於 2 個 Windows 檔案中:
name fileid filename size maxsize growth usage
MasterScratchPad_Data 1 C:\SQLDATA\MasterScratchPad_Data.MDF 6041600 KB Unlimited 5120000 KB data only
MasterScratchPad_Log 2 C:\SQLDATA\MasterScratchPad_Log.LDF 2111304 KB Unlimited 10% log only
MasterScratchPad_X1_Log 3 E:\SQLDATA\MasterScratchPad_X1_Log.LDF 191944 KB Unlimited 10% log only
我希望只有一個日誌檔案(即我可以將其增大並調整增長參數,但我希望在將資料庫升級到 SQL2008 之前它只是一個檔案)。
我已經備份了資料庫。我已發出:BACKUP LOG MasterScratchPad WITH TRUNCATE_ONLY。我已對兩個 LOG 檔案執行多個 DBCC SHRINKFILE 命令。最近的嘗試是 DBCC SHRINKFILE(MasterScratchPad_X1_Log, 0) 但結果如上。
如何達成只有一個 .LDF 的目標?我找不到任何有關如何刪除 fileid 為 3 的文件和/或如何將多個文件合併到一個日誌文件中的信息。
答案1
這是相當簡單的...下面是您的腳本。需要幫助請叫我。
謝謝!
-VM
使用[大師便條本]
去
更改資料庫 [MasterScratchPad] 刪除檔案 [MasterScratchPad_X1_Log]
去
答案2
也就是說,要注意你所做的事情。單文件(資料庫、日誌)資料庫比多文件資料庫慢 - 每個資料庫都有 X 個文件,其中 X 是核心數量,這是有充分理由的。 Microsoft 對此都有詳細記錄 - 但似乎很多人不喜歡閱讀(我很少看到在這些方面和其他方面有能力的 SQL 管理員)。